Junior — Middle
Jak lze nastavit omezení typu parametru v generiku?
sobes.tech AI
Odpověď od AI
V jazyce C# se omezení typu parametru u generických typů nastavuje pomocí klíčového slova where. To umožňuje určit, že typ parametru musí dědit z určité třídy, implementovat rozhraní, být referenční nebo hodnotový typ, mít konstruktor bez parametrů atd.
Příklad:
// Omezení: T musí být třída, která implementuje IDisposable a má konstruktor bez parametrů
public class MyClass<T> where T : class, IDisposable, new()
{
public T CreateInstance()
{
return new T();
}
}
Tímto způsobem zaručuje překladač, že při použití MyClass s konkrétním typem T, tento splňuje stanovená omezení.