我正在学习内存泄漏,我对如何删除“新”感到疑问。
我有一个像这样的构造函数:
Car(string nameOfCar) { carName = nameOfCar; }
然后我有一个继承Car的类,如下所示:
class Chrysler : public Car
{
public:
Chrysler(string sound = "wroooom") : Car(sound) {}
};
好吧,我有更多的代码,但我不认为我需要分享更多的代码,问我的问题。如果我错了,我会给你更多代码。
无论如何,在主要方面,我喜欢这样:
car.setCar(new Chrysler());
一切正常,但我有内存泄漏,因为我不知道如何删除新的克莱斯勒()。我想我需要在Car中使用析构函数,但我似乎无法正确使用它。有谁愿意帮助我吗? :)
答案 0 :(得分:-1)
执行此操作的正确方法是在每个创建的类的Destructor函数内设置delete运算符,以避免内存泄漏和崩溃