我正在寻找一种灵活但又快速的方法,可以在描述性计算器字符串的基础上进行简单的价值转换和计算。
例如:
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的想法吗?
答案 0 :(得分:5)
尝试多搜索一下。这是很常见的事情。它的解析,每个编译器都这样做。这有点像解析。
Solve equation from string to result in C
Evaluate a simple string mathmatical expression
Convert string to mathematical evaluation
等等。
有两种方法可以解决它,一种是自己编写,第二种是找到一个看起来像你正在寻找的库。我不知道C ++标准库中的任何类似内容,ruby和其他一些语言肯定,你可以只评估字符串,但在C ++中,你可能不得不借用一个来自网络或其他东西的图书馆。尝试最后一个链接,看起来很有希望。