16項 operator=では、全てのデータメンバに代入しよう

"operator=では、全てのデータメンバに代入しよう"


派生クラスの代入演算子やコピーコンストラクタを定義するときに、基底クラスの代入演算子やコピーコンストラクタを呼び出す必要があります。

例えば代入演算子では、下のように記述します。

CDerived &operator=(const CDerived &rhs)
{
    .... //派生クラスのメンバをコピー
    
    //Baseの代入演算子を呼び出す
    CBase::operator=(rhs);

    return *this;
}