您的位置:首页 > 编程语言 > C语言/C++

【C++基础 09】避免对象的拷贝

2014-08-03 15:00 183 查看
如果我们要使某个类不具备拷贝的功能,可写一个基类(base classes),然后将copy构造函数声明为private且不去实现它。

具体实现如下:

class A
{
public:
	A(){}
private:
	A(const A&);//copy构造函数为private且不实现它
	A& operator=(const A&);
};

class B : public A{
public:
	B(){}
	~B(){}
};

void main()
{
	A a ;
	A a1(a);    //error
	A a2 = a;   //error

	B b;
	B b1(b);    //error
	B b2 = b;   //error
	return;
}


所有错误的提示都是copy构造函数不能访问
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: