Mor*_*eza 9 c# generics clr bounded-types
在java中,可以绑定泛型类型的类型参数.它可以这样做:
class A<T extends B>{
...
}
Run Code Online (Sandbox Code Playgroud)
因此,此泛型类A的类型参数应为B或B的子类.
我想知道C#是否有类似的功能.如果有人让我知道,我很感激.
谢谢,
Bro*_*ass 18
C#中的相同内容是:
class A<T> where T : B
{
}
Run Code Online (Sandbox Code Playgroud)
另请参阅"类型参数约束"(msdn),以获得对约束的一般概述.
非常相似:
public class A<T> where T : B
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
这可以用于将T约束为B的子类或实现(如果B是接口).
此外,您可以将T约束为引用类型,值类型或要求默认构造函数:
where T : class // T must be a reference type
where T : struct // T must be a value type
where T : new() // T must have a default constructor
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4457 次 |
| 最近记录: |