instanciation avec types dynamiques - C++ - Programmation
Marsh Posté le 30-05-2005 à 11:59:26
n'utilise pas typeid(*p_Objet).name();
rajoute une méthode clone()
virtual Base* Base::clone() = 0;
virtual Derive* Derive::clone() { return new Derive(*this); }
(et tu peux faire ça avec une interface ICloneable<T> également)
Marsh Posté le 30-05-2005 à 11:56:31
Bonjour à tous!
J'ai un problème que même une longue recherche sur google ne m'a pas permis de résoudre...
voici mon problème :
j'ai une classe template que j'ai spécialisée pour les pointeurs, et qui ressemble à ca :
ceci marche très bien tant que mes objets ne font pas appel au polymorphisme.
mais ce que je voudrais, c'est que ceci marche même en passant en paramètre un pointeur vers un descendant du type DataType (celui mis en paramètre template), mais pour cela il faut que le new se fasse avec le type réel de l'objet pointé par le paramètre, que j'arrive à récupérer par
quelqu'un saurait-il comment, à partir du nom du type (ou par un autre moyen), faire que le new se fasse avec comme type non pas DataType mais le type de l'objet pointé par le paramètre?
merci d'avance!