Non riesco a capirlo. Ho bisogno di avere una classe base modello astratto, che è la seguente:Un puntatore alla classe di base del modello astratto?
template <class T> class Dendrite
{
public:
Dendrite()
{
}
virtual ~Dendrite()
{
}
virtual void Get(std::vector<T> &o) = 0;
protected:
std::vector<T> _data;
};
Ora, derivano da questo che specifica l'utilizzo esatto di Dendrite.
Ora il problema.
Come si crea un vettore di puntatori alla classe base senza un tipo specifico, che voglio specificare spingendo gli elementi in seguito? Qualcosa di simile:
class Foo
{
public:
...
private:
std::vector<Dendrite *> _inputs; //!< Unfortunately, this doesn't work...
//! Now I could later on push elements to this vector like
//!
//! _inputs.push_back(new DeriveFromDendrite<double>()) and
//! _inputs.push_back(new DeriveFromDendrite<int>()).
};
È possibile o mi manca qualcosa di molto semplice qui?
simile: http://stackoverflow.com/questions/1479498/how-to-subclass-a-templated-base -classe –