我有这样一个类:
class Kot{
public:
string name;
};
我创建了一个实例:
Kot* kot = new Kot;
kot->name = "John";
接下来我想创建一个字符串的副本:
string name;
name = strdup(kot->name.c_str());
我使用strdup
是因为我想要删除kot
并仅使用name
变量。
但由于
name的内存分配,我有5字节的内存泄漏。
如何安全地释放它?我尝试过
delete &name
,但是出现了:
Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
name = kot->name;
,这样你就得到了一份拷贝。 - AndersK