Supposons que nous ayons la hiérarchie de classe suivante:Faire une copie d'un type de béton inconnu en C++
class Base {
...
};
class Derived1 : public Base {
...
};
class Derived2 : public Base {
...
};
Compte tenu d'un Base*
qui pourrait pointer soit un objet Derived1
ou Derived2
comment puis-je faire une copie du réel objet étant donné que son type concret est inconnu. J'ai pensé à définir des constructeurs de copie mais je ne pense pas que cela soit possible sans connaître les types impliqués. La seule solution à laquelle je peux penser est de définir une méthode clone()
sur chaque type de la hiérarchie. Quelqu'un peut-il penser à quelque chose de plus élégant?
Je pense que vous voulez dire Base * obj1, * obj2 ;. =] – strager
Bonne prise strager! –