私が持っているタスクの一部は、他の 2 つのクラスの 2 つのリストを含むクラスを作成し、「ビッグ 4」(コンストラクター、コピー コンストラクター、operator=、デストラクター) を作成することです。
これが私がしたことです:
using namespace std;
class A{...};
class B{...};
class C{
list<A> a;
list<B> b;
public:
C();
~C();
C(const C& c);
void operator=(const C& c);
};
C::C(){
//How to allocate memory for a and b?
}
C::~C(){
//How to free the memory?
}
C::C(const C& c){
a=c.a;
b=c.b;
}
void operator=(const C& c){
if(&c==this) return;
// how do I delete a and b?
a=c.a;
b=c.b;
}
私が理解していないこと(コード内のコメントとして)をクリアしていただけますか。また、何も正しく行っていない場合はアドバイスをいただけますか?