哇哈哈哈,Tang脚本语言初步成果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哇哈哈哈,Tang脚本语言初步成果相关的知识,希望对你有一定的参考价值。
额,现在已经有了while语句,支持四则运算,比较运算,赋值表达式,所有变量都是double浮点数类型,在运行完程序后自动将所有变量的值显示出来。
目前语法树是这样的:
当然用了访问者模式,每个继承IVisitor的类都能有自己的功能,比如求值啊,格式化代码(将语法树转换成代码),求导啊(只对表达式有用)。我觉得这种模式真的方便地不得了。
再贴一下运行的代码吧:
这里是求带一个封号的表达式,带大括号的语句块,while语句块的执行过程。前面两个都好办,直接执行就行了。后面的while语句的condition由于Visit的返回值只能是void,所以建了一个mLastResult变量,用来保存每次返回的值。然后每次执行body判断一下喽。
功能还在加。
以上是关于哇哈哈哈,Tang脚本语言初步成果的主要内容,如果未能解决你的问题,请参考以下文章