当前位置: 首页 > 工具软件 > IKExpression > 使用案例 >

IKexpression中将RPN转换为抽象语法树,并计算结果的流程

潘璞瑜
2023-12-01

IKexpression中将RPN转换为抽象语法树,并计算结果的流程

AST结点的设计ExpressionToken

1.结点类型

2.常量值(部分情况)

3.变量值(部分情况)

4.操作符(部分情况)

5.字符序列

6.开始位置

引用类型设计Reference

1.操作符

2.常量数组

3.引用对象计算后的类型

编译栈

1.常量压入栈中

2.如果是操作符时

2.1判断是几元操作符

2.2根据几元操作符,弹出对应个数对象,构建引用对象,进一步构建ast结点expressionToken

2.3将ast结点压入栈中

2.4递归2.1-2.3,生成最终的一个对象

计算根结点

1.前序遍历二叉树

2.根据不同的操作符,进行不同的计算

 类似资料: