举例如下:
用户收入一串字符串a = fun1(int a, int b) + fun2(fun3(int x,int y),z)
fun1,fun2,fun3都是系统定义好的函数,如何实现解释?
各位大神有没有好的想法,不吝赐教,小弟感激不尽!
可以考虑用CodeDom动态构建代码,来跑结果。
表示解释器,好高大上的样子。
无论写解释器还是编译器,都要先定义好语法。
然后遵循语法使用一些范式进行解析,识别中间的符号,然后再执行。
市面上有源代码,就是简单的表达式解析与识别的。
解释器简单?
听说竞选美国总统也挺简单的,当然你掌握了就简单。
或者说,简单的解释器就很简单,你定义一些暴力规则,凡是不符合规则的全部当成错的,
或者你直接提供一个生成器,让用户选无可选。
如果你要的是解释器的那种解释器,那你准备个把月慢慢查资料,慢慢DEBUG吧。