какую библиотеку использовать для анализа аргументов командной строки в C++

Я знаю о getopts и argp. Я только что заглянул в boost, и у них есть program_options в качестве библиотеки для разбора параметров командной строки.

Я не совсем уверен, какой из них использовать. Я знаю, что getopts — это POSIX, а argp — нет, но для меня это не имеет значения. Важно простота использования. Можете порекомендовать (плюсы/минусы?) один. Я открыт и для других библиотек.


person s5s    schedule 15.04.2012    source источник


Ответы (3)


Если вам нужно что-то легкое и простое в использовании, вас может заинтересовать TCLAP (только заголовок, либеральная лицензия ). (пример)

В противном случае boost::program_options (также либеральная лицензия) предоставляет практически все может понадобиться. (пример)

Наконец, если вы уже используете фреймворк/библиотеку (WxWidgets, Qt ), который имеет некоторую обработку аргументов командной строки, то, вероятно, самый простой вариант — придерживаться этой структуры.

person Anonymous    schedule 15.04.2012

Вы также можете использовать popt.

Если вы используете графический инструментарий, такой как Gtk (через GtkMM, если на C++) или Qt, каждый из них предлагает свои собственные средства синтаксического анализа аргументов командной строки.

person Basile Starynkevitch    schedule 15.04.2012

glibmm имеет Glib::OptionContext. Это довольно просто, но делает то, что нужно большинству людей, стандартным способом. Это не очень хорошо документировано, но вот пример, который показывает большую часть того, что он может сделать: http://git.gnome.org/browse/glibmm/tree/examples/options/main.cc

Он обертывает API GOptionContext C в glib.

person murrayc    schedule 17.04.2012