我有一個錯誤我想不出它occues在以下方面:插入地圖爲載體失敗第二次
我實際上可以使用地圖矢量它:
map<vector<string> , vector<string> > parameterMap;
因爲我需要他們幾個(多少上運行時決定),我把它們放在一個列表(矢量):
vector<map<vector<string> , vector<string> > > listedParameterMap;
插入地圖在載體中:在方法的頭部 矢量聲明
listedParameterMap.insert(listedParameterMap.end(), 1, parameterMap);
此過程正常工作的第一次。第二次(地圖填充正確)它沒有工作。
我注意到一件事:我給了地圖的大小:
cout << "listedParameterMap " << listedParameterMap.size();
它顯示大小是第二時間後,手錶它說仍然。 它也顯示了我的有線內容:
截圖:
Last
應包含的東西看起來像First
其插入被defently正確填寫第二張圖。 同爲載體:part1_input
和part2_output
代碼:
for (unsigned int index = 0; index < part1_input.size(); index++) {
map<vector<string> , vector<string> > parameterMap;
parameterMap.insert
(pair<vector<string> , vector<string> > (part1_input[index], part2_output[index]));
listedParameterMap.insert(listedParameterMap.end(), 1, parameterMap);
cout << "listedParameterMap " << listedParameterMap.size();
}
我真的希望任何想法,爲什麼發生這種情況...
編輯:
「解決方案」正在打印出來。觀察窗口不顯示正確的值。這意味着我的問題是在其他地方引起的。但是這裏是令人驚歎的。感謝任何人試圖幫助我!
請定義「它不工作」。 – 2011-01-20 12:47:23
另外,請考慮使用typedefs! – 2011-01-20 12:48:01