Я хочу использовать boost :: program_options, чтобы указать требуемое многословие, что довольно часто встречается. Например,
./test -v # verbosity = 1
./test -vvv # verbosity = 3
./test -v blah blah -v # verbosity = 2
Я знаю, как сделать несколько вариантов, которые требуют значения, хотя я хочу, чтобы это было несколько случаев переключения. Один переключатель может быть выполнен с чем-то вроде
desc.add_options()
("verbosity,v", bool_switch(), "Increase verbosity");
, но это не с исключением с множеством_оккурсоров, если указано более одного параметра -v.
Несколько логических параметров могут быть выполнены с чем-то вроде
desc.add_options()
("verbose,v", value<std::vector<int> >(), "Increase verbosity");
, но для этого требуется, чтобы каждому параметру было присвоено значение, например
./test -v 1 -v 1 -v 1