나는 class A
유형의 벡터를 가지고 있습니다. 클래스 A
에는 명시 적으로 정의 된 복사 생성자가 있지만 복사 연산자가 비공개로 정의되지 않았습니다 (사용되지는 않습니다). 다음과 같이 벡터에 새 요소를 삽입하면vector.insert (...)가 생성자 또는 할당 연산자를 호출합니까?
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?
복사 연산자가 비공개라는 오류가 발생합니다. 하지만 vector가 복사 생성자를 사용해서는 안되는가?
중 하나를 구현하는 경우 ** ** 어쨌든 ** .... –