Soy un chico de VB.Net. (porque tengo que serlo, porque la persona que firma mi cheque lo dice): P) Crecí en Java y generalmente no tengo problemas para leer o escribir en C# cuando tengo la oportunidad. Encontré hoy una sintaxis que nunca había visto, y que parece que no puedo entender.En C#, ¿Qué es <T> después de una declaración de método?
En la siguiente declaración de método, ¿qué representa < T>?
static void Foo < T> (T params [] x)
que he visto se utiliza junto con declarar colecciones genéricas y las cosas, pero no puedo por la vida de a averiguar lo que hace por este método.
En caso de que importe, lo encontré pensando en C# brain teasers. El sexto avance contiene el fragmento de código completo.
En concreto, se define el nombre (o nombres) utilizar para el tipo genérico (s) en el método. –
Según tengo entendido, en este código, (params T [] x) es responsable de declarar que el método toma una cantidad de argumentos de tipo T y los almacena en una matriz a la que hace referencia x. Si eso es correcto, ¿qué agrega el < T > después del nombre del método a la declaración? – Drew
Quizás permite que el que llama sea más prolijo al describir el tipo de las variables pasadas como parámetros. ¿Podría llamar a Foo con una línea que lea Foo (myClassInstance, myClassInstance2) siempre que myClassInstance y myClassInstance2 sean del mismo tipo? – Drew