如何在C#中为泛型类型指定多个约束?

时间:2008-09-05 17:43:03

标签: c# .net oop generics type-constraints

在多种类型上放置约束的语法是什么?基本的例子:

class Animal<SpeciesType> where SpeciesType : Species

我想在以下定义中对这两种类型设置约束,以便SpeciesType必须从Species继承而OrderType必须从Order继承:

class Animal<SpeciesType, OrderType>

2 个答案:

答案 0 :(得分:60)

public class Animal<SpeciesType,OrderType>
    where SpeciesType : Species
    where OrderType : Order
{
}

答案 1 :(得分:18)

你应该可以去:

class Animal<SpeciesType, OrderType>
    where SpeciesType : Species
    where OrderType : Order {
}