Предположим, у меня есть класс, который не поддерживает поэлементное копирование, поэтому я не хочу сохранять реализованные компилятором конструктор копирования и оператор присваивания. Я также не хочу их реализовывать, потому что либо
, поэтому я хочу запретить их. Для этого я объявлю их частными и не предоставлю никакой реализации :
class NonCopyable {
private:
NonCopyable( const NonCopyable& ); //not implemented anywhere
void operator=( const NonCopyable& ); //not implemented anywhere
};
Теперь я могу выбрать любой тип возвращаемого значения для функции-члена operator = ()
. Будет ли иметь значение, какой тип возврата я выберу?