The Lean Mean C++ Option Parser handles the program arguments (argc, argv). It supports the short and long option formats of getopt(), getopt_long() and getopt_long_only() but has a more convenient interface. It is a freestanding, header-only library with no dependencies, not even libc or STL. It comes with a usage message formatter that supports column alignment and line wrapping, making it ideal for localized messages with different lengths.
Features
- Header-only library. Just #include "optionparser.h" and you're set.
- Freestanding. There are no dependencies whatsoever, not even the C or C++ standard library.
- Usage message formatter that supports column alignment and line wrapping.
- Unlike getopt() and derivatives it doesn't force you to loop through options sequentially. Instead you can access options directly like this:
- if ( options[QUIET] ) ... //Test for presence of a switch in the argument vector:
- if ( options[FOO].last()->type() == DISABLE ) ... // --enable-foo/--disable-foo: last one used wins
- int verbosity = options[VERBOSE].count(); // -v verbose, -vv more verbose
- for (Option* opt = options[FILE]; opt; opt = opt->next()) // go through all --file=<fname> arguments
Categories
Software DevelopmentLicense
MIT LicenseFollow The Lean Mean C++ Option Parser
Other Useful Business Software
Enterprise-grade ITSM, for every business
Freshservice is an intuitive, AI-powered platform that helps IT, operations, and business teams deliver exceptional service without the usual complexity. Automate repetitive tasks, resolve issues faster, and provide seamless support across the organization. From managing incidents and assets to driving smarter decisions, Freshservice makes it easy to stay efficient and scale with confidence.