Есть базовый класс X:
class X {
public:
X();
X(const X&);
X& operator=(const X&);
private:
//...
};
Производный класс Y не содержит данных, а лишь предоставляет некоторые новые функции. Нужно ли явно определять Y(const Y&), Y& operator=(const Y&)? Или по умолчанию будут вызваны соответствующие функции базового класса?
Спасибо.
Здравствуйте, Аноним, Вы писали:
А>Есть базовый класс X:
А>А>class X {
А>public:
А> X();
А> X(const X&);
А> X& operator=(const X&);
А>private:
А>//...
А>};
А>
А>Производный класс Y не содержит данных, а лишь предоставляет некоторые новые функции. Нужно ли явно определять Y(const Y&), Y& operator=(const Y&)? Или по умолчанию будут вызваны соответствующие функции базового класса?
по умолчанию должны вызваться и соответствующие функции полей Y, так что это ограничение лишнее.
http://codepad.org/qroxY7pq
zaufi, Caracrist, спасибо!