1
나는 새 요소를 삽입하고자하는 map
개체를 가지고 있습니다. 이 작업을 수행 한 후에이 새로 삽입 된 요소가 끝에 삽입되었는지 확인해야합니다. 나는 같은 것으로 서로 다른 반복자에 의존 할 수 있다면 나는 경우에도 확실하지 않다 때문에, 나는 두 반복자를 비교동일한 아이템을 가리키는 2 개의 맵 반복자가 동일한지를 보증합니까?
map<T1,T2> m;
//populate m
auto ret_pair = m.insert({o1,o2}); //o1,o2 objects of types T1,T2
auto end = m.cend();
--end;
if (ret_pair.first != end) //<-- this worries me
throw runtime_error("boom");
라인이 나를 걱정 이렇게하려면, 나는 다음과 같은 방법을 고안했다 같은 것을 가리킨다.
당신은 어떻게 생각하십니까? 왜이게 효과가 없을까요?
데니스 리치 (Dennis Ritchie)가 이에 대한 답을 모르겠다는 사실에 놀랐습니다. –
질문의 요지는 없습니다. 맵을 배치 할 순서대로 요소를 삽입하려고한다면 맵에서 요소를 정렬하는 오버 헤드가 필요한 이유는 무엇입니까? 요소를'vector' 또는'deque'에 넣기 만하면됩니다. –
@ 0A0D 그는 어쨌든 C 녀석입니다. –