ืฉืืจืืจ ืฉื ืกืคืจืืืช ืืืชืจืืช ืืืื 3.0 C++ (C++17 ืืืืืงื) ืื ืืชืื ืืจืืืื ืืื ืฉื ืฉืืจืช ืืคืงืืื ืืจืืคืจืก, ืืืคืฅ ืชืืช ืจืืฉืืื MIT.
ืื ืืืฉ:
- ืืืกืคื ืชืืืื ืืืืขืื ืื ืกืืชืจืื ืื ืืช ืื:
auto &group = program.add_mutually_exclusive_group(); group.add_argument("โfirst"); group.add_argument("โsecond");
- ื ืืกืฃ ืืืืื C++20;
- ืืืกืคื ืชืืืื ืืืืืจื ืืชืื ืืกืคืจ ืขืจืืื:
program.add_argument("input") .default_value(std::string{"baz"}) .choices("foo", "bar", "baz"); program.add_argument("count") .default_value(0) .choices(0, 1, 2, 3, 4, 5);
- ื ืืกืคื ืชืืืื ืืกืืืื ืืื ืืจื, ืืืฉื 0b101:
argparse::ArgumentParser program("ืืืื"); program.add_argument("-n").scan<'b', uint8_t>();
- ืืืกืคื ืืจืกื ืขืืืกื ืืื ืฉื is_subcommand_used, ืฉืืงืืืช ืื ืชื ืคืงืืืืช ืืฉื ื;
- ืืืกืืฃ ืคืจืืืจ exit_on_default_arguments ื-ArgumentParser;
- ื ืืกืคื ืชืืืื ืืืกืชืจืช ืคืงืืืืช ืืฉื ื ืืืคืื ืฉื ืืคืงืืื --help:
argparse::ArgumentParser program("ืืืื"); argparse::ArgumentParser hidden_cmd("hidden"); hidden_cmd.add_argument("ืงืืฆืื").remaining(); hidden_cmd.set_suppress(true); program.add_subparser(hidden_cmd);
- ืืืกืืคื ืืช ืืืืืืช ืืืืืง ืขืจืืื ืื ืืชืืื ื- ArgumentParser;
- ืืืกืืฃ ืืืฉืืจ ืืขืืืืช ืขืืจื ืืจืืื ืฉืืจืืช ืขืืืจ ืืจืืืื ืืื;
- ืืืืื ืจืืื ืชืืงื ื.
ืืงืืจ: linux.org.ru