Tag: boost program options

使用Boost库程序选项的必需和可选参数

我正在使用Boost程序选项库来parsing命令行参数。 我有以下要求: 一旦提供“帮助”,所有其他选项都是可选的; 一旦“帮助”没有提供,所有其他选项是必需的。 我如何处理这个? 这是我的代码处理这个,我发现它是非常多余的,我认为必须有一个容易做的,对吧? #include <boost/program_options.hpp> #include <iostream> #include <sstream> namespace po = boost::program_options; bool process_command_line(int argc, char** argv, std::string& host, std::string& port, std::string& configDir) { int iport; try { po::options_description desc("Program Usage", 1024, 512); desc.add_options() ("help", "produce help message") ("host,h", po::value<std::string>(&host), "set the host server") ("port,p", po::value<int>(&iport), "set the server port") ("config,c", […]