C# 具有受限类型参数的泛型类
我想创建一个泛型类,它接受一个类型参数,并将该参数限制为数值类型,或者更一般地限制为可以应用增量运算符++的任何类型 我知道我可以执行以下操作来限制结构,但显然有些结构不是数值类型,并且不支持++运算符。我能用C来做这个吗#C# 具有受限类型参数的泛型类,c#,generics,types,C#,Generics,Types,我想创建一个泛型类,它接受一个类型参数,并将该参数限制为数值类型,或者更一般地限制为可以应用增量运算符++的任何类型 我知道我可以执行以下操作来限制结构,但显然有些结构不是数值类型,并且不支持++运算符。我能用C来做这个吗# 类示例,其中T:struct { //实施细节 } 很遗憾,这是不可能的(请参阅)。您只能将类型约束为: 实现特定接口或从特定类派生 成为类或结构 有一个无参数构造函数 将类型限制为具有特定运算符是一项非常需要的功能,但我相信在C#4中也不会有。这是一项经常需要的功能。
类示例,其中T:struct
{
//实施细节
}
很遗憾,这是不可能的(请参阅)。您只能将类型约束为:
- 实现特定接口或从特定类派生
- 成为
或类
结构
- 有一个无参数构造函数
将类型限制为具有特定运算符是一项非常需要的功能,但我相信在C#4中也不会有。这是一项经常需要的功能。实现它需要对语言和运行时进行更改。这是一个假设的未来版本的可能性,但不可能是我们的最高优先级
class Example<T> where T : struct
{
//Implementation detail
}