關於 muParser 庫
許多應用程序需要解析數學表達式。該庫的主要目的是提供一種快速簡便的方法。
muParser是一個用C ++編寫的可擴展的高性能數學表達式解析器庫。
它的工作原理是將數學表達式轉換為字節碼並預先計算表達式的常量部分。
網上大多數都是關於它的 C++ 外部庫函數的介紹,幾乎沒有關於它類的成員函數的介紹......
這里就做個記錄,最近的項目里也用到了它。
首先,創建一個 Parser 對象,需要 #include "muParser.h"
Parser muparser;
設置表達式,傳入的參數最好是 wstring 的引用的形式
muparser.SetExpr(expression);
定義變量:
其中第一個參數接受 string_type 類型的數據,它實質上是 wchar_t
第二個參數接受 value_type 類型的數據,它實質上是 &double
muparser.DefineVar(L"x",&var_x);
獲取表達式計算結果:
return muparser.Eval();