현재 <int, Derived>
의 여러지도를 기본 클래스의 벡터에 저장하려고합니다.기본 클래스의 벡터에 어린이의지도를 저장
예 :
그러나std::map<int, Derived_1 *> map_1 = smth;
std::map<int, Derived_2 *> map_2 = smth_else;
std::vector<std::map<int, Base *>> list;
list.push_back(map_1);
list.push_back(map_2);
, 나는 파생 된지도와 기본 클래스 사이에 변환이 없다는 오류가 컴파일 할 때.
이 문제를 해결하기위한 더 나은 (또는 간단히 작동하는) 방법이 있습니까? 미리 감사드립니다.
이렇게하면'list [0]'이'std :: map'이더라도'list [0] [0] = new Derived_2; –
molbdnilo