【发布时间】:2012-11-05 17:26:28
【问题描述】:
boost::program_options 有问题。我有一个由几个子组件组成的软件,每个子组件都可以声明一些要在命令行上传递的选项。我想坚持以下流程:
- 使用一些选项配置 boost::program_options
- 匹配选项
- 使用匹配的选项初始化子组件
- 子组件构造函数声明更多选项
- 再次匹配选项以配置组件
所以,在执行的某个时刻(2),我只声明了一些选项,但程序实际上是用它们的全部集合(包括将在 3 中声明的那些)调用的,导致unrecognised option '...' 错误的数量。我可以抓住那些,但解析无论如何都会停止。我尝试使用多个options_description 组来处理这个问题,我还研究了命令行样式(style_t)以查看其中一个是否允许忽略不匹配的参数。你还有什么想法吗?
谢谢
【问题讨论】:
标签: boost command-line