具有受限Type参数的泛型类

Rob*_*obV 5 c# generics types

我想创建一个泛型类,它接受一个类型参数并将该参数限制为数值类型,或者更一般地限制为可以应用增量运算符++的任何类型.

我知道我可以执行以下操作来限制结构但显然有些结构不是数字类型,并且不支持++运算符.我可以用C#做​​这个吗

class Example<T> where T : struct
{
  //Implementation detail
}
Run Code Online (Sandbox Code Playgroud)

Mat*_*lls 8

不幸的是,这是不可能的(请参阅此处.)您只能将类型约束为:

  • 实现特定接口或从特定类派生
  • 是一个classstruct
  • 有一个无参数的构造函数

约束类型以具有特定的运算符是一个非常需要的功能,但我相信它也不会在C#4中.