2
A
回答
2
大多數堆實現不允許指向無效指針(即,當您的delete
地址未由堆返回給您時)。幾乎可以肯定的是標準窗口堆和CRT的堆(由MSVC實現)在這種情況下會產生調試斷點。
你也可以替換new
/delete
運算符的實現並自己檢查(在你的情況下你只想檢查地址是否屬於堆棧內存,這很容易)。
2
相關問題
- 1. 刪除堆棧中的對象?
- 2. 堆棧上的對象意外刪除
- 3. 的MongoDB - 捕捉刪除的對象由封閉的收集
- 4. HighCharts刪除堆棧總數
- 5. popBackStack刪除所有堆棧?
- 6. 用JS對象捕捉
- 7. 硒和捕捉對象
- 8. 堆棧或堆上的對象分配
- 9. 堆棧/堆上的對象創建?
- 10. 捕捉EmptyStackException與測試是堆棧是空的
- 11. Python是否有靜態對象,堆棧對象和堆對象?
- 12. 堆棧中的對象vs C++堆中的對象
- 13. Xamarin.Forms棱鏡從導航堆棧刪除視圖堆棧
- 14. 對象的堆棧上或堆棧上的隱藏成員?
- 15. 從Presentmodelview刪除的UIViewController堆棧
- 16. 刪除堆棧中的頂部片段
- 17. 的UINavigationController:如何刪除堆棧
- 18. 如何捕捉「超出最大調用堆棧大小」錯誤?
- 19. 如何捕捉64位應用程序堆棧損壞?
- 20. 捕捉對象到Python的腳本
- 21. 從堆棧面板刪除元素
- 22. jQuery從堆棧中刪除元素
- 23. 堆棧溢出錯誤而刪除樹
- 24. 在C++中刪除堆棧變量
- 25. 使用堆棧刪除二叉樹
- 26. 從子堆棧中刪除Perl模塊
- 27. 從導航堆棧中刪除網頁
- 28. Android:從堆棧中刪除活動
- 29. Iphone導航控制器刪除堆棧
- 30. 從堆棧中刪除活動
你的意思是在基於堆棧的對象上顯式調用'delete'的意義? – 2011-05-19 12:55:12
您是否嘗試過在堆棧對象的類的析構函數中放置一個斷點,或者在堆棧對象即將清理之前的方法末尾? – 2011-05-19 12:56:10
如果該類的所有對象始終位於堆棧上,則可以給它一個私有的,未實現的'operator delete'。 – 2011-05-19 12:58:23