OVERKILL demeden önce, umrumda değil.Taşıma '-' with boost.program_options
Boost.program_options öğesinin gerekli cat
seçeneğini -
karşılamasında nasıl yapabilirim? ,
Ben bir konumsal argüman olarak -
görmek istiyorum - ''
tanınmayan seçeneği:
ben
cat - - -
çalıştırdığınızda bir istisna atar// visible po::options_description options("Options"); options.add_options()("-u", po::value<bool>(), "Write bytes from the input file to the standard output without delay as each is read."); po::positional_options_description file_options; file_options.add("file", -1); po::variables_map vm; po::store(po::command_line_parser(argc, argv).options(options).positional(file_options).run(), vm); po::notify(vm); bool immediate = false; if(vm.count("-u")) immediate = true; if(vm.count("file")) support::print(vm["file"].as<vector<string>>());
var ve tam dosya listesinde doğru sıraya ihtiyacım var. Bunu nasıl başarabilirim?
GÜNCELLEME Yarım düzeltme var. Ben
po::options_description options("Options"); options.add_options()("-u", po::value<bool>(), "Write bytes from the input file to the standard output without delay as each is read.") ("file", po::value< vector<string> >(), "input file"); po::positional_options_description file_options; file_options.add("file", -1);
sorun şu ki sadece 2. almak gibi olduğunu
gerekli üç-
zaman çıkış argümanları: destek :: baskı güzel vektör ve malzeme işlemeif(vm.count("file")) support::print(vm["file"].as<vector<string>>());
.
Boost.PO seçeneklerinin sözdizimi kendi (belirli çeşit) vardır kaynak koduna görülebilir. Muhtemelen istediğiniz sözdizimi için Boost.PO kullanabilirsiniz. – Abyx
@Oli: tamamlandı. Teşekkürler. – rubenvb