Where does reference_wrapper
point to when I resize()
the vector below? Is this an undefined behavior? What should I do for safety?
std::vector < std::reference_wrapper <int> > vec;
vec.resize(10);
Your code doesn't compile, because reference_wrapper
doesn't have a default constructor.
error: no matching function for call to ‘std::reference_wrapper<int>::reference_wrapper()’