首页 > 代码库 > C++不可被拷贝类的实现
C++不可被拷贝类的实现
在C++中,类的拷贝主要是通过拷贝构造函数和赋值函数,还有就是为拷贝专门实现的成员方法。
拷贝构造函数和赋值函数在用户没有提供的情况下是由C++ 编译器自动生成的,是public成员,因此默认的C++类都有拷贝功能。
若让一个C++类不能被拷贝,可显式地声明类的拷贝构造函数和赋值函数为私有函数,从而达到该类不可被拷贝的目的。
下面提供一个简单的基类,任何从此类继承的派生类都不可被拷贝。
1 /* 2 *任何继承该类的派生类都不能进行复制和拷贝 3 * 4 */ 5 6 class NonCopyable 7 { 8 public: 9 NonCopyable(){}10 ~NonCopyable(){}11 private:12 NonCopyable(const NonCopyable &)13 const NonCopyable& operator=(const NonCopyable &);14 };15
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。