Mi piacerebbe costruire un messaggio con lunghezza o numero di argomenti sconosciuti. Ho preso un semplice modello di comeCome inserire diversi tipi di modello in un vettore
template <typename T> class Argument {
public:
int size;
int type;
T data;
};
e con un po 'sovraccarico
addMessage (int value) {
Argument<int> *a = new Argument<int>;
vec.push_back(a);
}
(uguale per archi e così via) cerco di spingere tutto in un vettore. Ho provato
std::vector<Argument* > vec;
std::vector<Argument<typename T>* > vec;
std::vector<Argument<>* > vec;
ma niente di tutto ciò sembra funzionare. C'è un modo per fare questo? Grazie in anticipo.
Sembra che mi sia sbagliato quando pensavo che i modelli fossero fatti per avere "tutti i tipi" a portata di mano. Dato che non c'è Boost usato in questo progetto, rimarrò legato all'ereditarietà. thx – DaClown
'std :: variant' è disponibile da C++ 17. http://en.cppreference.com/w/cpp/utility/variant – biowep