Я знаю, что вы можете написать:
class GenericClass<T> where T : new()
{
}
для обеспечения того, чтобы T
имел пустой конструктор.
Мои вопросы:
можете ли вы сделать так, чтобы
T
имел конструктор с определенным типом параметра? Нравится:class SingletonFactoryWithEmptyConstructor<T> where T : new(int)
можете ли вы сделать так, чтобы
T
имел статическую функцию (скажем,void F()
), чтобы вы могли использовать эту функцию внутри универсального класса? Нравится :class GenericClass<T> where T : void F() { void G () { T.F(); } }
Я знаю, что вы можете указать, что
T
реализует интерфейс, но я не хочу этого. Я хочу указать, чтоT
имеет статическую функцию.