0

我想定义一个类MyClass<T>和一个非常特殊的函数MyFunc<T>,但我想强制T(以任何方式)从接口或类继承。让我们称之为IMyInterface.

我对 C# 的了解允许我这样做的唯一方法是定义一个泛型类,检查它是否继承(例如,请参阅如何检查类型是子类型还是对象的类型?),然后抛出异常否则。

有没有办法在编译时而不是运行时强制执行此操作?

4

1 回答 1

4

泛型类型约束:

public void MyFunc<T>() where T : IMyInterface {
}
于 2013-08-24T05:55:55.393 回答