2010-04-30 5 views
38

Est-il possible de faire quelque chose commePar défaut pour le type générique?

public class PriorityQueue<TValue, TPriority=int> where TPriority : IComparable 

(notez le =int)?

Avant de suggérer, oui, je sais que je peux ajouter une autre ligne:

public class PriorityQueue<TValue> : PriorityQueue<TValue, int> { } 

Mais je me demande s'il est possible de le faire en tant que param.

+1

c'est une belle option C# 5.0 –

Répondre

29

Non. Il n'y a pas d'option pour les types par défaut sur les types génériques en C#.

Votre deuxième exemple est souvent la "meilleure" option disponible, si vous avez besoin de ce comportement.

Questions connexes