对于使用C ++开发的规则引擎,其中一个核心功能是值类型。到目前为止,我有点像COM风格的VARIANT - 每个值都知道它的类型。类型转换有一些规则,但它有点乱。
我想知道是否有可以用来解决这个问题的好的插入值类,而不需要我使用整个预构建的系统。例如,也许boost有什么东西?
答案 0 :(得分:6)
正在寻找boost::any或boost::variant?
基本上有三种类型的变体实现:
boost::lexical_cast
是您的朋友,或boost::variant
... int
初始化,保持int
并且不允许像其他任何内容一样隐式处理 - 这是boost::any
类型void*