【发布时间】:2014-02-08 15:31:50
【问题描述】:
我有一种可编写脚本的语言,我可以在其中定义不同的脚本元素。 现在我想在没有明确类型的情况下包括对数学运算符的支持。
我认为 Code 更好地解释了这一点:
var ret = a + b;
其中 a 和 b 是对象,但在运行时它们都是同一类型(例如 int、double 等)...
在不指定每个类型的情况下如何解决这个问题?
【问题讨论】:
-
您的问题真的不清楚。这是用 C# 还是你自己的语言?您是在尝试制作有效的 C#,还是在实现脚本引擎来执行它?
-
我在你的代码中看不到明确的类型,只要对象 a 实现 + 并且将接受 b 类型的参数,Bob 是你母亲的妹妹的兄弟
-
查看
operator关键字 -
我将获得有效的 csharp 代码! a 和 b 是对象类型的 csharp 变量,所以我不能添加它们,但在它们中是可以添加的类型,但我只在运行时知道类型....
-
为什么你认为你可以让它比 dynamic 更快?你不会的,DLR 已经过大量优化。静态语言当然更快,但是当你想创建一种不使用类型的脚本语言时,它就开始了。
标签: c# object reflection