Как да използвам 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
@AaronG. Не. Поддържайте списък с булеви флагове. - person ; 06.08.2013

трябва да знаете, че -rRsc е равно на -r -R -s -c.

person BlackMamba    schedule 06.08.2013
comment
@AaronG. И този отговор не означава, че трябва да ги посочите във формата, който също не искате. - person ; 06.08.2013