Back to questions
Junior — Middle
69
Каким образом можно установить ограничение на тип параметра в дженерике?
Companies where asked
Swiftfactory
Answer from AI
sobes.tech AI
В C# ограничение типа параметра в дженериках задаётся с помощью ключевого слова where. Оно позволяет указать, что тип параметра должен наследоваться от определённого класса, реализовывать интерфейс, быть ссылочным или значимым типом, иметь конструктор без параметров и т.д.
Пример:
// Ограничение: T должен быть классом, реализующим интерфейс IDisposable и иметь конструктор без параметров
public class MyClass<T> where T : class, IDisposable, new()
{
public T CreateInstance()
{
return new T();
}
}
Таким образом, компилятор гарантирует, что при использовании MyClass с конкретным типом T, он удовлетворяет заданным ограничениям.