7

我正在寻找一种灵活但也相当快速的方法来在描述性计算器字符串的基础上进行简单的值转换和计算。

例如这样的:

double r = 1.0;
double d = mathf( "sin(%1)+2*%2", r, M_PI );
double e = mathf( "%1 / 180.0 * %2", r, M_PI );

重要的想法是可以在运行时评估数学运算并从配置文件中加载。我什至在考虑某种脚本语言集成,但它似乎并不流畅和快速?

如果 C++ 存在诸如 mathf 之类的东西,有什么想法吗?

4

1 回答 1

5

尝试多搜索一下。这是很常见的事情。它正在解析,每个编译器都会这样做。使它有点像parsception。

从字符串求解方程以得到 C

计算一个简单的字符串数学表达式

将字符串转换为数学评估

等等等等

有两种方法可以解决,一种是自己编写,第二种是找到一个看起来像你正在寻找的库。我不知道在 C++ 标准库、ruby 和许多其他语言中肯定有类似的东西,你可以评估字符串,但在 C++ 中,你可能不得不从网上借一个库或者其他的东西。试试最后一个链接,它看起来很有希望。

于 2013-04-22T13:21:34.683 回答