我有一個std :: map < std :: string,std :: string>用一些API調用初始化。當我嘗試使用此地圖時,我遇到了分段錯誤。我如何檢測無效的代碼或什麼是無效的或任何可以幫助我解決問題的細節?代碼如下所示:如何使用Valgrind檢測分段故障細節?
std::map< std::string, std::string> cont;
some_func(cont); // getting parameter by reference and initialize it, someone corrupted memory (cont) inside this function
std::cout << cont[ "some_key" ] << '\n'; // segmentation fault here, cannot access "some_key"
'cont'不會恰好是一個全球性的,你在一些全局對象的構造函數訪問不是嗎? – 2010-04-23 20:58:07
@Davit:順便說一句,你可能想要不時地接受答案。讓每個人都知道哪個答案解決了您的問題是SO社區的一個重要方面。 – 2010-04-23 20:59:18
好的,我會再寫一次關於修復 – 2010-04-26 07:35:00