Bonjour à tous,
J'ai les classes suivantes:
je cherche à écrire une fonction du type
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 class Base{ virtual void f(); }; class A: public Base{ void f(); }; class B: pulbic Base{ void f(); }; class C: public Base{ void f(); };
du moins de manière plus élégante et en ne devant pas rajouter une ligne supplémemtaire chaque fois que je rajouterai un objet dérivé de la classe Base...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Base* mafonction (Base* ptrBase){ if (typeid(ptrBase) == typeid(A)) return (new A); else if (typeid(ptrBase) == typeid(B)) return (new B); else if (typeid(ptrBase) == typeid(C)) return (new C); }
Si la question est claire, est ce que qqun sait m'aider?
Merci beaucoup
D
Partager