Bonjour,
J'ai un petit soucis avec les templates et le polymorphisme :
J'ai une classe Mère abstraite et des classes FilleA et FilleB qui en héritent.
Ma classe Mère va avoir des méthodes que vont devoir surcharger les classe filles.
Seulement, elle vont devoir changer les types des paramètres.
J'ai donc fait comme ceci :
Jusqu'ici tout va bien !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 abstract class Mère<T> { public abstract T maMéthode(T param) } class Fille1 : Mère<T1> { public T1 maMéthode(T1 param) } class Fille2 : Mère<T2> { public T2 maMéthode(T2 param) }
Mais, dans une autre classe j'ai besoin de créer soit une instance de Fille1 soit de fille 2 donc j'ai fait ça :
Mais là il me dit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public static Mère() { if test return new Fille1; else return new Fille2; }L'utilisation du type 'Mère<T>' générique requiert les arguments de type '1'
Partager