在C++如果设置拷贝构造函数和赋值构造函数不可用呢, 其实很简单,只需把它们设置为private就可以了,如下所示:
class Thing
{
public:
private:
Thing(const Thing&);
Thing& operator=(const Thing&);
};
int _tmain(int argc, _TCHAR* argv[])
{
Thing t1;
//如果不想用户能否复制类的对象,就声明复制构造函数,赋值操作符为私有的
//Thing t2(t1); //error C2248: “Thing::Thing”: 无法访问 private 成员(在“Thing”类中声
//Thing t2 = t1; //error C2248: “Thing::Thing”: 无法访问 private 成员(在“Thing”类中声
return 0;
}