Как бы я использовал getopt для этого?

Мне нужен способ анализа нескольких переключателей, которые выводятся как один аргумент ( argv ), некоторые из переключателей в моей программе будут, например:

-rRsc 

Как мне реализовать getopt, чтобы пользователь мог вводить несколько переключателей как один аргумент, без пробелов или тире между переключателями, поэтому нет:

-r -R -s -c

Или это невозможно сделать с помощью getopt? Если это не так, что еще я могу использовать, что является частью STL?


person Delete    schedule 06.08.2013    source источник


Ответы (2)


Getopt уже обрабатывает этот случай по умолчанию. Вам не нужно делать ничего особенного. (Прокрутите вниз до конца эту страницу, чтобы увидеть пример.)

person Community    schedule 06.08.2013
comment
Что, если функциональность коммутатора зависит от коммутатора перед ним? Таким образом, для -r, если -c также включен, это рекурсивное сканирование файлов только с расширениями файлов C++. Итак, как бы я вставил эти параметры? Вложенный оператор switch/if? - person Delete; 06.08.2013
comment
@Аарон Г. Нет. Ведите список логических флагов. - person ; 06.08.2013

вы должны знать, что -rRsc равно -r -R -s -c.

person BlackMamba    schedule 06.08.2013
comment
@Аарон Г. И этот ответ не означает, что вы должны указывать их в том формате, который вам не нужен. - person ; 06.08.2013