我有一个Scriptable语言,我可以在其中定义不同的脚本元素。 现在我想要包括对数学运算符的支持,而没有明确的类型。
我认为Code更好地解释了这一点:
var ret = a + b;
其中a和b是对象,但在运行时它们都是相同的类型(例如int,double等)......
如何在不指定每个类型的情况下解决这个问题?
答案 0 :(得分:1)
a和b ar csharp类型为对象的变量,所以我不能添加它们,但是在它们中是一个可以添加的类型,但我只知道运行时的类型
运行时绑定的完美案例:
dynamic ret = (dynamic)a + (dynamic)b;
它具有与a
和b
静态类型的完全运行时类型相同的语义。
答案 1 :(得分:0)
我现在通过
尝试Expression.Add(...
我认为这会奏效。通过构建Property Get Expression,我也获得了“a”的价值......