실패 벡터에지도의
vector<map<vector<string> , vector<string> > > listedParameterMap;
삽입지도는 내가 다음에 occues 어디 알 수없는 오류가 두 번째
삽입 : : 방법의 머리에 벡터 선언 : 나는리스트로 (벡터)를 넣어 (런타임에 결정 얼마나 많은) 그들 중 몇 가지가 필요합니다
listedParameterMap.insert(listedParameterMap.end(), 1, parameterMap);
이 절차는 처음에는 정상적으로 작동합니다. 두 번째로 (지도가 올바르게 채워짐) 작동하지 않습니다.
나는 일을 발견 : 나는지도의 크기를 알려주지 : 두 번째 시간 이후 2이다가 크기를 표시
cout << "listedParameterMap " << listedParameterMap.size();
을의 시계을가 1 여전히 말했다. 또한 나에게 유선 내용을 보여줍니다 :
스크린 샷 :
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();
}
이런 일이 발생하는 이유는 정말 어떤 아이디어 감사하겠습니다 ...
편집 :
"해결책"이 물건을 인쇄하고있었습니다. 조사 식 창에 올바른 값이 표시되지 않습니다. 그건 내 문제가 어딘가에서 발생했음을 의미합니다. 그러나 여기에 anwsered입니다. 어떻게 도와 줘서 고마워!
"작동하지 않음"을 정의하십시오. –
또한 typedef를 사용해보십시오! –
그림을보세요 ... 물어보기 전에 -1을 주면 저를 도와주지 않습니다! 두 번째 항목 ('마지막')이 아닌 것처럼 보일 수 있습니다 ('처음'과 비슷 함) – Beasly