我对Qt还是很陌生,想知道一些有关内存管理和对象生命的基本知识。什么时候需要删除和/或销毁我的对象?有没有自动处理的?在下面的示例中,我需要删除哪些对象?销毁实例变量myOtherClass时会发生什么myClass?如果我根本不删除(或销毁)对象,会发生什么?这会成为记忆问题吗?MyClass.hclass MyClass{public: MyClass(); ~MyClass(); MyOtherClass *myOtherClass;};MyClass.cppMyClass::MyClass() { myOtherClass = new MyOtherClass(); MyOtherClass myOtherClass2; QString myString = "Hello";}如您所见,这是个非常容易上手的东西,但是我可以在哪里轻松学习呢?
4 回答
Cats萌萌
TA贡献1805条经验 获得超9个赞
为了补充这些答案,为了验证,我建议您Visual Leak Detetor
为Visual c ++项目使用库,包括Qt项目,因为它基于c ++,该库与new, delete, free and malloc
语句兼容,有据可查且易于使用。不要忘记,当您创建自己的QDialog
或QWidget
继承的接口类,然后创建该类的新对象时,请不要忘记执行setAttribute(Qt::WA_DeleteOnClose)
对象的功能。
- 4 回答
- 0 关注
- 626 浏览
添加回答
举报
0/150
提交
取消