2010-04-30 14 views
38

¿Es posible hacer algo como¿Predeterminado para el tipo genérico?

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

(tenga en cuenta la =int)?

Antes de sugerir que, sí, ya sé que sólo puede añadir otra línea:

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

Pero me pregunto si es posible hacerlo como un parámetro.

+1

esa es una buena opción C# 5.0 –

Respuesta

29

No. No hay ninguna opción para este tipo de defecto en los tipos genéricos en C#.

Su segundo ejemplo menudo es la "mejor" opción disponible, si necesita este comportamiento.

Cuestiones relacionadas