當我使用Visual Studio 2015編寫代碼時,我無法在「調試模式」下調試並運行我的程序,編譯時顯示「調試斷言失敗,迭代器+偏移超出範圍「,但是,我的程序可以在發佈模式下成功運行,也可以在其他輕量級ide(code :: blocks)中運行,原因是什麼?使用visual studio,爲什麼C++程序無法在調試模式下運行,而在發佈模式下運行成功
0
A
回答
5
您的代碼的行爲是undefined。
你顯然正在嘗試索引超出範圍的數組(或相關容器)。 C++通常不會進行任何運行時檢查;程序員的工作是確保不會發生。
您的調試版本可以幫助您吸引注意力。
未定義的行爲在發佈版本中以不同的方式表現出來。
修復斷言!
2
您試圖超越end()上的迭代器最有可能。您不會在發佈模式下發生錯誤,因爲在發佈模式下禁用檢查此問題的assert語句。
相關問題
- 1. 無法在調試模式下運行
- 2. Visual Studio在「發佈」模式下運行項目,但不在「調試」模式下運行項目
- 3. 爲什麼我無法在發佈模式下運行我的C#程序?
- 4. 在調試或發佈模式標誌下運行而不運行時調試
- 5. 爲什麼Visual Studio在調試模式下運行時發出嘟嘟聲?
- 6. Nunit未在Visual Studio調試模式下運行SetUp方法
- 7. 爲什麼實模式應用程序無法在保護模式下運行?
- 8. 爲什麼硒代碼只能在調試模式下成功執行,但在運行模式下失敗?
- 9. 在發佈模式下調試Visual Studio Web應用程序
- 10. 在c中fopen無法在調試模式下運行
- 11. 爲什麼SelectTemplate方法在調試模式下運行2次?
- 12. GCC在調試模式下崩潰,在發佈模式下運行良好?
- 13. 爲什麼visual studio 2010在調試模式下運行速度很慢
- 14. C#:在調試模式下運行應用程序
- 15. SSIS包運行在調試模式下Visual Studio內部的
- 16. 應用程序在調試模式下運行良好,但在發佈模式下引發編譯錯誤
- 17. 如何在Visual Studio以外的調試模式下運行winforms應用程序
- 18. 爲什麼bootstrap 3只能在symfony2開發模式下運行,而不是在prod模式下運行?
- 19. 在調試模式下運行的相同Android應用程序,在發佈模式下崩潰
- 20. 在「調試」模式下運行Boxstarter?
- 21. 爲什麼Interop.WMPLib無法在發佈模式下加載程序集,但在調試模式下工作?
- 22. 在無模式模式下運行solr
- 23. 程序只在C :: B調試模式下運行
- 24. 在調試模式下運行RSpec的
- 25. 爲什麼WPF應用程序在調試模式下運行速度慢?
- 26. 爲什麼我的應用程序在發佈模式下崩潰而不是在調試模式下崩潰?
- 27. 應用程序在調試模式下平穩運行,但在發佈模式下崩潰
- 28. 我的程序只能在調試模式下運行(visual studio 2010)
- 29. 無法在調試模式下使用Docker運行燒瓶應用程序
- 30. 單元測試只傳遞在調試模式下,無法在運行模式
「運行成功」!=「沒有錯誤」。 –