-4
Q
C++銷燬對象
A
回答
2
new A()
返回一個指向對象而不是對象的指針。
4
正確的代碼是:
A *a = new A();
,你就必須自己銷燬它:
delete a;
你會通常只有創建新的對象(在堆上), 如果你想讓它的壽命比現在的範圍更長。 如果你想有離開的範圍時銷燬對象, 你只需將它分配在堆棧上:
{ A a;
}
請讓自己熟悉的情況下,智能指針,你必須分配在你的對象堆 - 無需繼承上個世紀的C編程哲學!
相關問題
- 1. 銷燬對象
- 2. 對象銷燬
- 3. 銷燬C中的非託管對象#
- 4. 在C#中銷燬結構對象?
- 5. 如何銷燬C#中的COM對象?
- 6. 如何銷燬PDFJS對象?
- 7. 在X ++中銷燬對象
- 8. 如何銷燬java對象?
- 9. RSpec與Factory_girl - 銷燬對象
- 10. Python:全局對象銷燬
- 11. 銷燬Oracle PLSQL對象
- 12. 何時銷燬對象?
- 13. 銷燬對象的::地圖
- 14. 銷燬對象的錯誤
- 15. 銷燬主類對象
- 16. 銷燬停用對象
- 17. 銷燬Ember.js中的對象
- 18. 銷燬成員對象
- 19. Unity2d - 銷燬對象使用銷燬(gameObject)//它會銷燬與腳本連接的對象
- 20. C#通過Excel過程銷燬多個Excel對象的正確方法銷燬
- 21. 摧毀主要對象時銷燬嵌入對象
- 22. 書寫方法銷燬並創建鏈接銷燬對象
- 23. 父母被銷燬時如何銷燬子對象?
- 24. 銷燬對象指針數組
- 25. 使用javascript銷燬閃存對象
- 26. 統一對象已被銷燬
- 27. 試圖訪問被銷燬對象
- 28. 如何銷燬PhoneStateListener類的對象?
- 29. Boost shared_ptr不會立即銷燬對象
- 30. 重置/銷燬對象實例
您還需要銷燬該對象:'刪除A'或mem漏洞 – yizzlez
您是否嘗試編譯上述代碼? – tinkertime
不,你不需要擔心這裏的內存泄漏,因爲這是不可能的。代碼不會編譯。 (除非你虐待'A'構造函數,它需要一個'A *'並且它不釋放它) – Cornstalks