Dans les modèles C++, on peut préciser qu'un certain type de paramètre est une valeur par défaut. I. e. sauf s'il est explicitement spécifié, il va utiliser le type T.
Cela peut être fait ou approchée en C#?
Je suis à la recherche de quelque chose comme:
public class MyTemplate<T1, T2=string> {}
De sorte qu'une instance du type qui n'a pas de spécifier de manière explicite T2
:
MyTemplate<int> t = new MyTemplate<int>();
Serait essentiellement:
MyTemplate<int, string> t = new MyTemplate<int, string>();
Finalement, je suis à la recherche à un cas dans lequel il y a un modèle qui est assez largement utilisé, mais j'envisage l'expansion avec un autre type de paramètre. J'ai pu de sous-classe, je suppose, mais j'étais curieux de savoir si il y avait d'autres options dans cette veine.