网站首页 > 网络编程教程 > ASP.NET教程 > 语言决不是语法的不同之.NET 版本计算表达式的值

语言决不是语法的不同之.NET 版本计算表达式的值

  • 作者:互联网
  • 时间:2009-06-30 16:01:22

很多人会说语言只是语法的差异,事实上,大家忽略了一点选择了一种语言,语言的提供者一定会提供很多的系统库给这个语言.

接下来一个简单的例子来结合Js***pt.net 和 C# 来实现对一个表达式的计算.

问题要求: 输入一串简单的表达式,输出值.
比如2+4*7 返回30

注意我们全部用.net 去实现,呵呵.

1.新建一个jscript文件, Cu***mEval.js

// JScript source code
class CustomEval
{
static function eval(strExp)
{
return eval(strExp);
}

}然后到.net 的command prompt,编译该js为一个.net 程序集

jsc /t:library Cu***mEval.js
然后就生成了一个Cu***mEval.dll 标准的.net程序集.

调用也很简单.
新建一个项目,引用该dll, 并且也引用MI***soft.Jscript.dll

如下代码:

 class Program
    {
        static void Main(string[] args)
        {
            Co***le.WriteLine(Cu***mEval.eval("2+4*7"));
        }
    }
呵呵,结果就出来了.

类似你用C# 可以用很多Mi***soft.Visualbasic.*.dll 提供的功能. C# 利用VB的特性