私は次のようなboost::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
と機能しますが、ブーストを渡すと、 「boost::any_castを使用した変換に失敗しました」のaがスローされ/I hithere
ます。boost::bad_any_cast
what()
program_optionsを使用して/
-delimittedまたは-
-delimittedオプションのいずれかを解析することは可能ですか?/
ボーナスの質問、同じオプションを設定するように構成できます-
が、バイナリは互いに反対ですか?たとえば、/verbose
詳細なログを意味する場合がありますが、詳細でないログを意味する場合-verbose
があります。