Пример:
class C
{
public:
void operator =(int i) {}
};
class SubC : public C
{
};
Следующее дает ошибку компиляции:
SubC subC;
subC = 0;
"нет совпадения для 'operator=' в 'subC = 0'
Некоторые источники утверждают, что это происходит потому, что операторы присваивания не наследуются. Но не потому ли, что созданное по умолчанию копирование-назначение SubC
затмевает их?