如果我们想禁止对象被复制,应该写一个private的复制构造函数(不能不写,不写会自动生成),但这样的话自己的成员函数和友元还是可以调用它,进一步的方法是只声明而不实现(这个可以通过编译)。这样的话,如果是外部调用,会编译错误,如果是自己的成员函数或友元调用,会链接错误。
c++ primer还是要好好看 !!
本文介绍了如何在C++中禁止对象被复制。通过声明私有的复制构造函数并故意不实现它,可以阻止对象的复制行为,同时确保即使在友元函数或成员函数中也无法调用该构造函数。
如果我们想禁止对象被复制,应该写一个private的复制构造函数(不能不写,不写会自动生成),但这样的话自己的成员函数和友元还是可以调用它,进一步的方法是只声明而不实现(这个可以通过编译)。这样的话,如果是外部调用,会编译错误,如果是自己的成员函数或友元调用,会链接错误。
c++ primer还是要好好看 !!
3738

被折叠的 条评论
为什么被折叠?