相关疑难解决方法(0)

不太通用的泛型?C#泛型中算术的可能解决方案

目前,C#中的泛型不允许任何理智的方式来执行算术.有一些尴尬的解决方法,但它们都不是很整洁,所有这些都会降低性能.根据这次访谈,不可能实现具有算术类型的接口,因此提出了一种这样的解决方法.

但你可以做的是让你的矩阵作为计算器的参数,并在计算器中,有一个名为multiply的方法.你去实现它并将它传递给Matrix.

为什么我必须告诉高级编程语言如何添加和乘以数字? [由于受欢迎的需求而编辑]

为什么不简单地允许将Generic限制为类型列表?

例如.

class Matrix<T> where T : int,long,float,double
Run Code Online (Sandbox Code Playgroud)

语法当然可以是不同的.但是编译器只需要检查类型是否在列表中,并且所使用的运算符适用于所有类型,这应该比显然太难的接口建议简单得多.

是否有任何明显的原因导致无法实施?

c# generics math types

-2
推荐指数
1
解决办法
847
查看次数

标签 统计

c# ×1

generics ×1

math ×1

types ×1