将类型限制为Int,Double,long的泛型

Gra*_*ton 18 c#

是否有可能约束的方法,使得其只接收int,double,long或其他数字类型,其具有通常的数值运算(例如+,-,*,/)中所定义?

rpe*_*ich 19

目前这是不可能的.

此外,请参阅此问题以获取可能的解决方法

  • 事实上,数字类型没有通用的基本类型是非常不幸的. (4认同)
  • 我更喜欢能够指定运算符类型约束 (2认同)
  • 虽然此链接可以回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会变得无效。 (2认同)

Luc*_*ero 11

不,遗憾的是没有这样的限制.您可以获得的最接近的是使用struct, IConvertible泛型类型约束.

您可能想要阅读这个问题.

  • 我很惊讶为什么来自Lucero的这个没有被投票.使用结构是最接近可以将类型参数限制为值类型的结构 (2认同)