所以我在这里查看了 MSDN 示例:类型参数的约束(C# 编程指南),第一个示例显示了以下泛型类,它定义了where
具有单个具体类型的约束:Employee
public class GenericList<T> where T : Employee
现在,当使用where
约束时,我完全理解定义 > 1 类型时的用法,或者最肯定的是使用接口时的用法。但是(我知道这只是一个示例),为什么我只想使用where
约束来限制单个具体类型?我不能只替换下面的代码:
public T FindFirstOccurrence(string s)
有以下因为无论如何只有一个约束?
public Employee FindFirstOccurrence(string s)
我可以看到使用单个约束部署代码的唯一原因where
是为了在未来灵活地为 if become 添加额外的约束,Employee
并且IEmployee
我为更改设置得更容易一些。
有人可以解释使用where
单一类型的约束提供什么目的吗?
谢谢!