我對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 關注
- 640 瀏覽
添加回答
舉報
0/150
提交
取消