多种类型参数约束的C#泛型语法

Jon*_*n B 357 c# generics

可能重复:
通用方法和多个约束

我需要一个具有两个类型约束的泛型函数,每个约束都继承自不同的基类.我知道如何使用一种类型:

void foo<T>() where T : BaseClass
Run Code Online (Sandbox Code Playgroud)

但是,我不知道如何使用两种类型:

void foo<TOne, TTwo>() where TOne : BaseOne // and TTwo : BaseTwo ???
Run Code Online (Sandbox Code Playgroud)

你怎么做到这一点?(使用.NET 2)

Joe*_*nez 620

void foo<TOne, TTwo>() 
   where TOne : BaseOne
   where TTwo : BaseTwo
Run Code Online (Sandbox Code Playgroud)

更多信息:http:
//msdn.microsoft.com/en-us/library/d5x73970.aspx

  • 如果您不想全部阅读,请搜索"约束多个参数". (7认同)
  • 是否有可能有一个约束来做到这一点:`void foo&lt;TOne, TTwo&gt;() where TOne : Class where TTwo : Class where TOne != TTwo` 所以基本上我们不知道 TOne 和 TTwo 是什么,除了它们是引用类型但不能相同 (3认同)