c ++有一个很好的通用选项类吗?

Han*_*ans 3 c++

每次我编写另一个小型c ++玩具程序时,我都会遇到一个易于使用的小型选项/参数类.这是它应该做的:

  • 至少接受整数,双精度,字符串参数
  • 添加新选项的简便方法
  • 便携,小巧,快速
  • 自由
  • 从文件和/或命令行中读取选项
  • 参数的上限和下限
  • 以及我现在没想到的所有其他有用的东西

我想要做的是将指向此类的指针传递给构建器和我的所有策略对象,以便他们可以读取我正在运行的算法的参数(例如,哪种算法,最大迭代次数等)

有人能指出我至少实现其中一些内容的实现吗?

Oli*_*rth 9

Boost Program-Options很漂亮.我认为除了可能的边界验证之外,它会列出您列表中的所有内容.但即便如此,您也可以非常轻松地提供自定义验证器.

更新:正如@stefan在评论中正确指出的那样,这也是"小"的失败!如果您静态链接它,它会为您的二进制文件添加相当大的块.

  • @stefan:是的,我绝对错过了"小"的名单.但我不确定"快速"是否真的会成为这类任务的问题.关于"便携式",你知道这个库有什么特别的问题吗?(如果有的话,我会感兴趣,因为我经常使用它.) (3认同)