問題タブ [boost-program-options]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1052 参照

c++ - boost::program_options はコンソールから整数配列を読み取ります

boost::program_options を使用してコンソールから整数配列を読み取りたい。配列の長さは不明で、1 回の試行ですべてのデータを読み取りたくありません。どうやってやるの?

私が今やっていることは、

$ ./foo --array "1, 2, 3"

次に、入力文字列を分割して arr[] に入力します。

しかし、私は次のようなものが欲しい

$ ./foo --array 1 --array 2 --array 3

そしてarr[]でそれを読んでください。また、arr[] の長さを知りたいのですが、それをコマンドライン パラメータにしたくありません。

0 投票する
1 に答える
280 参照

c++ - コロンとコンマの表記を解釈するパーサーはありますか?

boost::program_options を使用するのは初めてで、コロンとコンマ表記を使用して数値のコマンド ライン引数を解析したいと考えています。たとえば、次のような引数が必要です。

整数 1 ~ 100、次に 200、最後に 300 のベクトルを生成します。

この表記に名前はありますか?

私の最初の傾向は、この引数を文字列として扱い、解析を行う関数関数に渡す必要があるということです。これは、「誰かがすでに行って利用可能にしたもの」の優れた候補のようです。

0 投票する
1 に答える
364 参照

c++ - 入力を std::string ではなく const char* として扱うための boost::program_options の取得

上記は、最終的に std::string& から Foo& への lex_cast を実行しようとします。

const char*& から Foo& への lex_cast を代わりに行う方法はありますか?

ありがとう!

0 投票する
1 に答える
1328 参照

c++ - Boost ライブラリ (program_options) でコンパイルが失敗する

今日、C++ アプリケーションを再構築しましたが、コンパイルに失敗しました。しかし、何も変わっていません。最初のエラーは、ここで(プライベート継承)Listから継承する私のクラスにありました:std::vector

コンパイラによって宣言が見つからなかったため、std::vector<T>::前に追加する必要がありました。push_back(value);なぜそうなったのかはよくわかりませんが、g++ の更新があり、現在 Arch Linux で C++11 を使用して g++ v4.7.0 (プレリリース) を使用しています。

私はその問題を修正しましたが、実際の問題は、Boost ライブラリの問題のためにアプリケーションの残りの部分をコンパイルできないことですprogram_options。ライブラリには次のものを含めます。

エラー:

List クラスと同じエラー…</p>

ありがとうございました!

0 投票する
1 に答える
1638 参照

c++ - 未定義の参照 boost::program_options::abstract_variables_map::operator[]

program_options を共有ライブラリにリンクしている場合:

abstract_variables_map::operator[] の参照が未定義のため、ライブラリを読み込めません:

program_options ライブラリが静的にリンクされた別のプログラム (共有ライブラリではない) をビルドしようとしましたが、未定義の参照が取得されませんでした。

共有ライブラリをリンクしているときに未定義の参照が発生するのはなぜですか?

0 投票する
4 に答える
900 参照

c++ - boost ::program_options"polymorphic"引数

boost :: program_optionsを使用して、次のように呼び出すことができる実行可能ファイルを作成したいと思います。

最小限のコードで、タイプセーフな方法でこれを達成するための最良の方法は何ですか?

0 投票する
1 に答える
2479 参照

c++ - boost::program_options で非請求パラメータを処理する方法

boost::program_options私は自分のアプリケーションにコマンド ライン解析インターフェイスを提供するために使用します。オプションを解析するように設定したいのですが、

最後の切り替え後のすべてのトークンがベクトルの形式で返されるように構成したいと思います。collect_unrecognizedBoost のドキュメントに記載されている例に従って使用してみましたが、入力ファイルに位置引数も使用しているため、いくつかの問題が発生しました。

基本的にはこのようにしたいと思います。私が持っている場合:

値に格納inputfile.abcしてofを返し、未承諾の引数として返したいと思います。input-filevector<string>argument1argument2argument3

ただし、位置引数を使用できるようにしたいので、

同じ結果が得られます。

これがすでに尋ねられている場合は申し訳ありませんが、助けてくれてありがとう.

0 投票する
1 に答える
377 参照

c++ - boost::program_options が切り捨てられた単語を受け入れるのはなぜですか?

次のプログラムがあります。

で実行すると、./myprg --help期待どおりの結果が得られます。

ただし、実行しても同じ結果が得られます:./myprg --hまたは./myprg --heまたは./myprg --hel. これらの最後のオプションはエラーをスローするべきではありませんか?

0 投票する
1 に答える
16939 参照

c++ - ブーストプログラムオプションでデフォルトの引数値を取得するにはどうすればよいですか?

コマンドライン引数の一部にデフォルト値を使用したいと思います。デフォルトオプションが何であるかを知るにはどうすればよいですprogram_optionsか。また、ユーザーが引数を指定しない場合は、プログラムにデフォルト値を使用するように指示するにはどうすればよいですか。

デフォルト値3で、殺人的な大暴れで送信するロボットの数を指定する引数が必要だとします。

robotkill --robots 5を生成5 robots have begun the silicon revolutionしますが、 robotkill(引数が指定されていない場合)はを生成し3 robots have begun the silicon revolutionます。

0 投票する
1 に答える
277 参照

c++ - boost :: program_optionsを使用して、スイッチ自体を含むコマンドライン引数を解析するにはどうすればよいですか?

私はC++でプログラムを書いています。これは、最初にいくつかのセットアップコードを含み、最後にanalisysコードを含むいくつかのベンチマークのラッパーです。

最大2つのベンチマークを並行して実行したいと思います。これらの元のコマンドラインは次のとおりです。

そして、これらをラッパーのコマンドラインに配置したいと思います。

元のコマンドラインを含む、とstd::vector<std::string>のそれぞれに1つずつ、合計2つのを取得したい場合。これは私がそれをしている方法です(を使用して):command0command1boost::program_options

これは基本的に機能します。-ただし、ベンチマークの引数が(私が見たほとんどのプログラムのほとんどのスイッチのように)で始まる場合、またはprogram_optionsの下にグループ化する必要があることを認識していないため、ラッパーのスイッチの一部としてそれらを解析しようとします。command0command1

program_optionsそれをサポートしていますか?もしそうなら、どのように?


例:

私が働いているところでは、次のようにマルチトークンを「終了」することによってこれを行うための規則があります。

(この例では、で終了--command0しまし-command0-た。)

どうすればprogram_optionsこのように処理できますか?