下一个类将使用成员变量newTodayTaskString
(string
)启动。
销毁对象时,我喜欢删除字符串,但是在编译项目时,我收到一条错误消息,指出销毁者删除行说:
删除:std :: string不能转换为void
类:
class TodayTask {
private:
string newTodayTaskString;
public:
TodayTask (string t) : newTodayTaskString (t){}
// Destr.
~TodayTask () {
delete newTodayTaskString;
}
string getTodayTaskString () const {
return newTodayTaskString;
}
};
最佳答案
必须为delete
提供一个指针,并且只能用于销毁使用new
创建的对象。
在这种情况下,对象是类成员,因此将被自动销毁。您无需在析构函数中对其进行任何处理。
关于c++ - C++析构函数无法正常工作,编译错误,仅尝试使用destr删除成员变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11342734/