C业务规则表达式解析器评估

C业务规则表达式解析器评估,第1张

概述我正在寻找用C编写的便携式轻量级库的建议,支持数学和业务规则的表达和评估.我明白C不在STL中提供这样的功能. 基本要求如下: 要评估的表达式将由数字和字符串以及表示数字或字符串的变量组成. 某些表达式预计将被多次评估(1000-2000次),因此需要对表达式进行高性能评估. 本来是我公司的项目,我们将所有业务规则编码为从基本表达式类派生的类.问题是,这种方法在表达式数量增加时不能很好地扩展. 我 我正在寻找用C编写的便携式轻量级库的建议,支持数学和业务规则的表达和评估.我明白C不在STL中提供这样的功能.

基本要求如下:

要评估的表达式将由数字和字符串以及表示数字或字符串的变量组成.

某些表达式预计将被多次评估(1000-2000次),因此需要对表达式进行高性能评估.

本来是我公司的项目,我们将所有业务规则编码为从基本表达式类派生的类.问题是,这种方法在表达式数量增加时不能很好地扩展.

我已经搜索到了,但是我可以找到的大多数“图书馆”都是分流码算法的大概简单例子,大多数表达式解析器在同一步骤中执行解析和评估,使得它们不适合连续重新评估,而且只支持数字.

我正在寻找:

library written in C++ (C++03 or C++11) Stable/production worthy Fast evaluations Portable (win32/linux) Any suggestions for building high performance business rules engine.

业务规则示例

‘rule_result =(remaining_items< min_items)和(item ==“beach ball”)'

解决方法 参见 this answer概述的 C++ Mathematical Expression Library.

但是,如果您真的想要速度,请考虑将表达式直接编译为C/C++,然后动态加载它们(共享对象/ DLL).

总结

以上是内存溢出为你收集整理的C业务规则表达式解析器/评估全部内容,希望文章能够帮你解决C业务规则表达式解析器/评估所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1253886.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存