Sobes.tech
Junior — Middle

¿Cómo se puede establecer una restricción en el tipo de parámetro en un genérico?

sobes.tech AI

Respuesta de la IA

En C#, la restricción de tipo de parámetro en genéricos se establece mediante la palabra clave where. Esto permite especificar que el tipo de parámetro debe heredar de una clase determinada, implementar una interfaz, ser un tipo de referencia o valor, tener un constructor sin parámetros, etc.

Ejemplo:

// Restricción: T debe ser una clase que implemente IDisposable y tenga un constructor sin parámetros
public class MyClass<T> where T : class, IDisposable, new()
{
    public T CreateInstance()
    {
        return new T();
    }
}

De esta manera, el compilador garantiza que al usar MyClass con un tipo T específico, este cumple con las restricciones establecidas.