Junior — Middle
Kā var iestatīt ierobežojumu parametra tipam ģenerikā?
sobes.tech AI
Atbilde no AI
C# valodā, ģeneriskajos tipos parametra tipa ierobežojums tiek noteikts ar atslēgas vārdu where. Tas ļauj norādīt, ka parametra tips ir jāmantoto no noteiktas klases, jāīsteno saskarne, jābūt atsauces vai vērtības tipam, jābūt bezparametru konstruktoram utt.
Piemērs:
// Ierobežojums: T jābūt klasei, kas īsteno IDisposable un ir bezparametru konstruktoru
public class MyClass<T> where T : class, IDisposable, new()
{
public T CreateInstance()
{
return new T();
}
}
Tādējādi, kompilators nodrošina, ka, izmantojot MyClass ar konkrētu T tipu, tas atbilst noteiktajiem ierobežojumiem.