复制控制
1、对于构造方法,如果没有声明任何一个构造方法,编译器会自动生成一个Default构造方法。
2、对于Copy构造方法,Copy赋值操作符,析构方法,如果没有声明,编译器会自动生成相应的方法。
3、如果不想使用编译器自动生成的构造方法,就明确表示拒绝。
4、对于Copy构造方法和Copy赋值操作符,使用private禁止外部访问,为了避免成员方法和友元方法访问,对这类方法只声明,不定义,这样的话,到调用Copy构造或者Copy赋值的时候,就会导致link错误。
boost库中的nonecopyable,就是这样一个类,如果想让自己的类禁止copy构造和copy赋值,继承nonecopyable就Ok了。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步