Parsing 使用GCMathParser进行iphone开发

Parsing 使用GCMathParser进行iphone开发,parsing,math,formula,Parsing,Math,Formula,我正在尝试在我的iPhone应用程序中使用GCMathParser。为了编译它,我将#import更改为#import,并用M#pi替换pi,成功地编译了代码 它基本上工作正常,但当我输入错误的语法,如3.3.3或3,我得到了我应该得到的语法错误。但下一次我解析一个非常简单的公式(如5)时,仍然会出现语法错误。我确保分配新实例以确保它启动新实例,但我仍然得到了它。有人有同样的问题吗?GCMathParser中似乎有一个bug;然而,这是有办法的。有一种固定模式:当一个格式错误的表达式被送入解析器

我正在尝试在我的iPhone应用程序中使用GCMathParser。为了编译它,我将
#import
更改为
#import
,并用M#pi替换pi,成功地编译了代码


它基本上工作正常,但当我输入错误的语法,如3.3.3或3,我得到了我应该得到的语法错误。但下一次我解析一个非常简单的公式(如5)时,仍然会出现语法错误。我确保分配新实例以确保它启动新实例,但我仍然得到了它。有人有同样的问题吗?

GCMathParser中似乎有一个bug;然而,这是有办法的。有一种固定模式:当一个格式错误的表达式被送入解析器时,会引发异常。之后,即使输入了格式良好的表达式,也会再次引发异常。关键是对格式良好的表达式进行两次求值。首先检查是否引发了异常;如果是,只需重新计算同一表达式。在第二次计算格式良好的表达式时,不会引发异常。瞧