Hi I'm learning C++ and I am reading about copy constructors. Well, I have a question:

Why, if I don't provide a proper copy constructor for a class, Will an initialization such as:

vector<ThatClass> v(5);

fail?


I understand that compilers can ignore the copy constructor with arrays or function returns by value, but what's different about the vector class?

Thanks!