我正忙着一个分流码算法。如果你有一个表达式:
x + y + sqrt 25 - 3
班级不知道变量名称和值是什么。所以我在类中有一个函数,instantianteVariable(char name,int value),带有调用:
expr.instantiateVariable('x',5);//Set x = 5
expr.instantiateVariable('y',3);//Set y = 3
如何使用现在已知的变量替换表达式中的未知变量? x和y可以是任何字符,因此我无法使用名称x和y创建类成员。
答案 0 :(得分:2)
我相信你可以为每个所需的变量创建一个地图或字典。在评估表达式的过程中,您可以使用地图查找"令牌"必要的。