これは、Effective C++ 2nd edition scott meyers (page 70) の項目 16 からのものです。
著者は、基本クラスの operator = が次のように呼び出されると、あまり説明せずに書いています。
Base::operator=(rhs);
一部のコンパイラは (間違ってはいますが) コンパイラによって生成された場合はこれを拒否しますoperator =
(項目45 を参照)。
static_cast<base&>(*this) = rhs;
項目 45 で、基本クラスoperator =
がプライベートの場合、派生クラス=
にはそれを呼び出す権利がないと述べています。
しかし、元の質問では、コンパイラーによって生成されたため、コンパイラーはそれを拒否していました(公開する必要があります)
これに関するヘルプ(リンク)は役に立ちます。(これらのタイプの質問をグーグルで検索するのは非常に困難です)