STL карта с различными типами значений? - PullRequest
1 голос
/ 31 марта 2011

Я хочу хранить ссылки на различные объекты на карте, но я не знаю, как определить карту.

Например:

map<string, & ObjectReferenceOfAnyKind> myList;

myList[ "keyA",  stringA );
myList[ "keyBlist",  vector );
myList[ "file",   fileObject );

string &value = (string&) myList["keyA"]; 
CFile &fobj = (CFile&) myList["file"];

Любое предложение, как решить эту проблему

1 Ответ

1 голос
/ 31 марта 2011

Карты STL (как и все контейнеры STL) хранят только значения, принадлежащие одному типу.Таким образом, вы можете использовать указатели на базовый класс или объединение в качестве типа значения.Boost предлагает современный различающий союз с Variant .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...