示例
class
MyClass
{
public
:
void
function();
private
:
char
*field;
};
解决方案
对于与内存相关的类,始终实现副本构造函数。
class
MyClass
{
public
:
void
function();
MyClass(const MyClass& copy){
field = copy;
}
private
:
char
*field;
};
解决方案
通过将副本构造函数声明为 private 来禁用副本构造。
class
MyClass
{
public
:
void
function();
private
:
MyClass(const MyClass& copy);
char
*field;
};