如果给出两种类型(类型a,类型b),是否有任何"好"的方法来确定这两个是否可以进行比较,求和等?
我在想如果类型实现IConvertible,可以将两者都转换成让我们说十进制并执行" Convert.ToDecimal(a) > Convert.ToDecimal(b)"?
我正在构建一个表达式求值程序,并希望能够处理任何类型的对象,因此需要知道一个类型是否可以与另一个类型进行比较(它不必在两侧都是相同的类型.例如.double > int)
小智 1
是否可以添加类型取决于编程语言的绑定规则。特别是隐式转换和重载解析。
从 .net 3.5 开始,有“Expression”类和相关的辅助类可以做到这一点。 .NET泛型中重载运算符约束的解决方案
| 归档时间: |
|
| 查看次数: |
346 次 |
| 最近记录: |