@roxanne.hauck
Существует несколько способов реализации класса для хранения разнотипных данных в C++:
Пример:
1 2 3 4 5 6 7 8 |
template<typename T> class DataHolder{ private: T value; public: void setValue(T val) {value = val;} T getValue() {return value;} }; |
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
class BaseData{ public: virtual void setValue() = 0; virtual void getValue() = 0; }; class IntData : public BaseData{ private: int value; public: void setValue(int val) {value = val;} int getValue() {return value;} }; class StringData : public BaseData{ private: string value; public: void setValue(string val) {value = val;} string getValue() {return value;} }; |
Пример:
1 2 3 4 5 6 |
union DataHolder{ int i; double d; bool b; char c; }; |
Какой способ использовать зависит от конкретной задачи и требований к проекту.