我是使用Eclipse進行調試的新手。Eclipse C++在STL中調試中斷
我嘗試調試我的應用程序以知道段錯誤的位置。
問題在於Eclipse在STL內部中斷,這非常煩人。
例如:我在第134行的源文件中創建了一個斷點,這很好地工作了 但是如果我按F6查找「Step Over」,Eclipse/gdb將在basic_string構造函數中使用std :: COUT。
對此有何暗示?是否有Eclipse或類似的配置選項?
我是使用Eclipse進行調試的新手。Eclipse C++在STL中調試中斷
我嘗試調試我的應用程序以知道段錯誤的位置。
問題在於Eclipse在STL內部中斷,這非常煩人。
例如:我在第134行的源文件中創建了一個斷點,這很好地工作了 但是如果我按F6查找「Step Over」,Eclipse/gdb將在basic_string構造函數中使用std :: COUT。
對此有何暗示?是否有Eclipse或類似的配置選項?
也許這就是它錯位的地方?
我還沒有使用Eclipse,但我確定有一個「堆棧回溯」或「調用堆棧」視圖,您可以使用它查看以STL代碼結尾的調用鏈。
是的,有這樣的觀點 – 2009-03-04 10:27:52
所以,這解決了你的問題。對? – flodin 2009-03-04 15:07:13
如果代碼被優化,那麼它可能會破壞stl。嘗試使用調試模式進行編譯,這可能會有所幫助。
鑑於有限的信息,這是想到什麼,
如果這個不工作發佈更多信息。
我有類似的問題。這是關於內聯函數(哪些是應用程序)。
您需要添加一些編譯器標誌來生成一些額外的調試信息。如果您使用gcc,請參閱-g *標誌(-gdb用於gdb調試器遵從性,它爲您提供了對該類型調試器最恰當的支持)。
此外,你可能想關閉優化。
P.s.我還不夠清楚:這不是Eclipse的錯,它是編譯器/調試器故障。
沒有它seg段導致堆棧溢出導致無限循環 - 即時通訊只是尋找導致行^^ 但回答你的問題:循環開始發送SIGINT到我的應用程序,但我得到那些STL休息也在啓動 - 似乎每次我使用std :: cout – 2009-03-04 09:38:35