मैं बढ़ावा उपयोग कर रहा हूँ :: program_options इस तरह:बढ़ा सकते हैं :: program_options "-" से अधिक एक डिलीमीटर का उपयोग करें?
namespace po = boost::program_options;
po::options_description desc("Options");
desc.add_options()
("help,?", "Show Options")
("capture-file,I", po::value<string>(), "Capture File")
("capture-format,F", po::value<string>()->default_value("pcap"), "Capture File Format")
("output-file,O", po::value<string>()->default_value("CONOUT$"), "Output File");
po::variables_map vm;
po::store(po::command_line_parser(ac, av).options(desc)./*positional(pd).*/run(), vm);
अगर मैं कमांड लाइन पैरामीटर -I hithere
यह काम करता है गुजरती हैं, लेकिन यह मैं /I hithere
बढ़ावा बढ़ावा का उपयोग कर "के विफल रूपांतरण एक what()
के साथ एक boost::bad_any_cast
फेंकता पारित :: any_cast "।
क्या /
- डिलीमिट किए गए या -
- डिलीमिट किए गए विकल्पों को पार्स करने के लिए प्रोग्राम_प्शन का उपयोग करना संभव है? बोनस प्रश्न, क्या इसे कॉन्फ़िगर किया जा सकता है ताकि /
और -
एक ही विकल्प सेट कर सकें, लेकिन एक-दूसरे के द्विआधारी विरोध हैं? उदाहरण के लिए, /verbose
का अर्थ वर्बोज़ लॉगिंग हो सकता है जबकि -verbose
का अर्थ कम वर्बोज़ लॉगिंग हो सकता है।
तुम शायद सही हो। क्या यह निर्धारित करना संभव है कि 'स्टोर' पर कॉल के बाद कौन सी डिलीमीटर का उपयोग किया गया था? –
जब तक आप अपने स्वयं के अतिरिक्त पार्सर का उपयोग नहीं कर रहे हैं, मुझे ऐसा नहीं लगता है। –
ठीक है, वैसे भी यह एक बोनस सवाल था। :) –