首页 > 代码库 > 改善程序与设计的55个具体做法 day4
改善程序与设计的55个具体做法 day4
条款12:复制对象时勿忘其每一个成分
这里的复制是拷贝构造和operator=
每一个成分有几个维度:
1、每个成员变量
这个很好理解,添加新的成员时也要记得为每个新添加的成员执行合适的复制操作
2、每个基类的成员变量
在子类中调用可以调用基类的拷贝构造函数或者operator=
e.g.
class CObject : public CBase {};CObject::CObject(const CObject& obj) : CBase(obj), val(obj.val){}CObject& CObject::operator=(const CObject& obj){ if (this != &obj) { CBase::operator=(obj); // 调用基类的operator= val = obj.val; } return *this;}
改善程序与设计的55个具体做法 day4
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。