我想让类的对象不可复制,所以我把copy构造函数和operator =放在私有部分.但是,一个类是此类的朋友,因此它可以访问私有方法.将throw异常放在copy构造函数和operator =中以确保不会复制对象是个好主意吗?
使其不可复制的一种方法只是声明复制构造函数,但根本不实现它.如果有人试图使用它,那将在编译时强制链接器错误.
class foo
{
private:
foo(const foo&); // not defined
foo& operator=(const foo&); // not defined
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
312 次 |
| 最近记录: |