2009-07-17 116 views
5

我想創建一個通用類,它接受一個類型參數並將該參數限制爲數字類型或更一般地將其限制爲可應用增量操作符++的任何類型。具有受限類型參數的通用類

我知道我可以做到以下限制到結構,但顯然有結構是不是數字類型和++運算符不支持。我能做到這一點在C#

class Example<T> where T : struct 
{ 
    //Implementation detail 
} 
+2

這是一個經常要求的功能。實現它需要改變語言和運行時。這是假設未來版本的可能性,但不太可能成爲我們的最高優先級。 – 2009-07-17 13:54:46

回答

8

可惜這是不可能的(見here)只能約束類型:

  • 實現特定接口或一個特定的類派生
  • classstruct
  • 有一個參數的構造函數

限制類型以具有特定的運算符是一個非常需要的功能,但我相信它也不會在C#4中。

相關問題