Ho una classe denominata ABC che ha un modello di classe:C++ utilizzando puntatori a modello oggetti
template <class T> class ABC{}
In un'altra classe che sto cercando di vendite di oggetti ABC in un elenco:
class CDE{
private:
list<ABC *> some_list;
}
Intendo memorizzare oggetti di ABC che potrebbero avere parametri di modello di classe diversi. È necessario specificare il modello anche per un puntatore al momento della compilazione? Cosa succede se il contenitore deve memorizzare oggetti di diverso tipo? Non è possibile?
Questo sembra abbastanza ragionevole, con un piccolo svantaggio. L'intera ragione per usare i modelli era assicurarsi che gli oggetti fossero strettamente accoppiati. In questo modo c'è ancora la possibilità di creare oggetti di ABC_Base (o delle sue classi derivate) senza tipo di template e usarli nella lista. – cyrux
@cyrux Se si crea un abstract di 'ABC_Base', quindi nessuno può creare oggetti di' ABC_Base'. – user470379