Pergunta

I'm using boost::program_options to implement a command-line utility with this syntax:

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

where 'command' is mandatory, and is one of the following:

read | write | find | version | help

the thing is that 'command' should not require -- or - and I have not found how to do that with boost::program_options.

Foi útil?

Solução

The command line options which have no name are called positional options:

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);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top