В принципе, я хочу, чтобы MyClass содержал Hashmap, который сопоставляет имя поля (string) с любым типом Значение.. Для этого я написал отдельный класс MyField, который содержит информацию о типе и значении.
Это то, что у меня есть до сих пор:
template <typename T>
class MyField {
T m_Value;
int m_Size;
}
struct MyClass {
std::map<string, MyField> fields; //ERROR!!!
}
Но, как вы можете видеть, объявление карты терпит неудачу, потому что я не предоставил параметр типа для MyField...
Итак, я думаю, что это должно быть что-то вроде
std::map< string, MyField<int> > fields;
или
std::map< string, MyField<double> > fields;
Но, очевидно, это подрывает мою цель, потому что заявленная карта может содержать только MyField определенного типа. Я хочу, чтобы карта, в которой может храниться любой тип MyField clas..
Есть ли способ достичь этого.?