У меня есть вектор с элементами типа class A
. Класс A
имеет явно определенный конструктор копирования, но оператор копирования стал закрытым и неопределенным (он не предназначен для использования). Если я вставлю новые элементы в вектор, как показано ниже
A walker; //This calls the default constructor.
std::vector< A > vec;
std::vector< A >::iterator it = vec.begin();
vec.insert( it, walker ); //Shouldn't this call the copy constructor?
Я получаю сообщение о том, что оператор копирования является частным. Но не должен ли вектор использовать конструктор копирования?