我想使用Boost program_options來解析我的程序輸入。一般來說,文檔提供瞭解析所需的信息。但是,我想讓我的程序在沒有提供輸入時打印使用說明,我似乎無法弄清楚。似乎沒有「默認」選項,我也找不到如何計算提供的輸入數量(測試)。Boost :: program_options - 如果沒有輸入提供的打印用法
這是我的代碼的時刻:
boost::program_options::options_description help("Usage");
help.add_options()
("help", "print help info");
boost::program_options::options_description req("Required inputs");
req.add_options()
("root", boost::program_options::value<std::string>(&images_root), "Root directory")
boost::program_options::options_description opt("Option inputs");
opt.add_options()
("verbose", boost::program_options::value<bool>(&verbose)->implicit_value(1), "Verbose");
boost::program_options::variables_map vm;
boost::program_options::store(boost::program_options::parse_command_line(argc, argv, all), vm);
if (vm.count("help"))
{
std::cout << help;
return 1;
}
boost::program_options::notify(vm);
我怎麼能生產出以下(即,如果沒有輸入做std::cout << help
)?
./test-file
>> print help info
如何自定義的驗證功能? – Shravan40