어떻게 unordered_map의 복사본을 기존의 컨테이너에서 만들 수 있습니까? 할당 연산자를 사용할 수 있습니까? 아니면 하나씩 반복해야합니까? 또한 shared_ptr을 맵의 값으로 사용하고 있습니다. shared_ptr이기 때문에 특별히주의해야합니까?하나의 STL 컨테이너의 내용을 다른 STL 컨테이너로 복사
typedef unordered_map<string, shared_ptr<classA>>MAP1;
MAP1 map1;
map1["abc"] = make_shared<classA>();
MAP2 map2 = map1; ?? //can I use assignment operator??
감사합니다.
나는 보통이 방식으로 대답하지 않지만 그것을 시도 했습니까? – GManNickG
이것은 보이는 것처럼 많이 할당되지 않습니다. 실제로 MAP2의 생성자에 대한 호출입니다 ... 그러나 아무도 여기서'MAP2'가 무엇인지 알지 못해서 여러분의 질문에 대답하기가 어려울 것입니다. 그리고 정말로 모든 대문자 식별자를 사용하지 말아야하는데, 대개 매크로 용으로 예약되어 있습니다. –
[표준 템플릿 라이브러리] (http://stackoverflow.com/a/5205571/834176)라고 생각합니다. –