当我们自己编写拷贝构造函数时,编译器就不会为该类生成默认拷贝构造函数了,对于assignment operator也是如此。
1. 拷贝构造函数中记得调用父类的拷贝构造函数,或者相应复制过程
class Man { private: int age; public: Man(int _age = 0) : age(_age){} }; class Woman : public Man { public: Woman() {} Woman(const Woman& w) : Man(w) {} Woman& operator=(const Woman& rhs) { Man::operator=(rhs); } };
2. 编写operator函数注意调用父类operartor的形式