C#Generics:什么是通用约束接口?

Idr*_*ees 4 c# generics

在MSDN上 - C#编程指南对类型参数的约束,它说:

其中T:interface_name

type参数必须是或实现指定的接口.可以指定多个接口约束.约束接口也可以是通用的.

有人可以解释一下,拥有通用接口意味着什么?并解释这可能是一个约束,它提供了什么?

一个simple例子和simple解释非常感谢.

许多在此先感谢:)

Cod*_*aos 7

您可以使用通用接口作为约束.例如:

class MyClass<T> where T:IEnumerable<string>
Run Code Online (Sandbox Code Playgroud)

您甚至可以将您定义的类型的泛型参数替换为约束:

class MyClass<T> where T:IEnumerable<T>
Run Code Online (Sandbox Code Playgroud)