15

我正在使用 boost::program_options 来实现具有以下语法的命令行实用程序:

myutil command [--in file_name] [---out file_name]

其中“命令”是强制性的,并且是以下之一:

read | write | find | version | help

问题是“命令”不应该需要--,或者-我还没有找到如何使用 boost::program_options 来做到这一点。

4

1 回答 1

12

没有名称的命令行选项称为位置选项

po::positional_options_description p;
p.add("command", -1);
po::variables_map vm;
po::store(po::command_line_parser(ac, av).
          options(desc).positional(p).run(), vm);
于 2012-07-30T07:01:59.457 回答