提升程序选项:位置和多首选项

Per*_*-lk 5 c++ boost-program-options

boost::program_options当允许多音和位置选项时,如何解析或管理输入?

例如:

./app.sample pos1 --multitokenoption a b c d pos2 
Run Code Online (Sandbox Code Playgroud)

multitokenoption完成和位置选项何时开始时,助推器如何知道?

显然,最合乎逻辑的允许行为是多声道选项必须作为最后一个参数出现,就像函数参数中的默认参数一样,但是文档没有说明它.

HEK*_*KTO 5

标记多首选项的值结束有三种方法:

  1. 另外一个选项:

        ./app.sample pos1 --multitokenoption a b c d --regularoption v pos2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 位置选项的选项名称(几乎是#1):

        ./app.sample pos1 --multitokenoption a b c d --pos2 pos2
    
    Run Code Online (Sandbox Code Playgroud)
  3. 双破折号:

        ./app.sample pos1 --multitokenoption a b c d -- pos2
    
    Run Code Online (Sandbox Code Playgroud)

否则多标记选项将不知道在哪里停止 - 没有什么神奇之处.

  • 这个对我有用.Boost = 1.55.0,Compiler = GCC 4.8.1,OS = Xubuntu 3.11.10.3 (2认同)