我遇到boost::program_options
的问题。我有一个由几个子组件组成的软件,每个子组件都可以声明一些在命令行上传递的选项。我想坚持以下流程:
所以,在某个执行的瞬间(2),我只声明了许多选项,但是程序实际上是用它们的整个集合调用的(包括将在3中声明的那些),导致unrecognised option '...'
个错误的数量。我可以抓住那些,但无论如何解析都会停止。我尝试使用多个options_description
组处理它,我还研究了命令行样式(style_t
)以查看其中一个是否允许忽略不匹配的参数。你有更多的想法吗?
由于
答案 0 :(得分:1)
问题解决了,抱歉让你烦恼,但这对某人来说可能会派上用场。而不是使用parse_command_line
auto parsed = parse_command_line(argc, argv, opts);
在调用command_line_parser
run
的{{1}}方法
allow_unregistered