복사 생성자가없는 클래스가 있거나 operator=
이 오버로드되었습니다. 코드는 꽤 큰하지만 문제는이 의사 코드 주위 :클래스에 복사 생성자 문제가 없습니다?
ClassA object1(x,y);
object1.add(z)
myVector.push_back(object1);
//Now when I retrieve from myVector and do add it
// apparently creates another object
myVector.at(index).add(z1);
나는 그것이 의사 코드입니다 말했듯이. 전문가들이 이해할 수 있기를 바랍니다.
그래서, 지금해야 될 복사 생성자의 필요성은, ClassB가 B는이 릴리스의 새로운 데이터 멤버이기 때문에
Class ClassA {
private:
int x;
string y;
ClassB b;
vector<int> i;
public:
int z;
}
를 ClassA는 (물론 모든 데이터 멤버 포함)과 같다? 답변 해 주신 모든 분들께 감사드립니다.
Class ClassB {
private:
vector<ClassC*> c;
Class D
}
Class ClassC {
private:
vector<ClassE*> e;
}
Class ClassD{
private:
vector<ClassF*> f;
}
그러면 ClassE와 ClassF는 int 및 string과 같은 기본 유형을 갖습니다.
(게시물에 사용자 이름을 표시하려면 자동 생성 된 userXYZ 이름 대신 원하는 이름으로 프로파일을 채우십시오. 게시물에 서명하지 마십시오.) – Mat
Welcome to Stack Overflow! SO는 질의 응답 사이트입니다. 특정 질문이 있으십니까? –