問題タブ [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 に答える
8804 参照

c++ - ブースト program_options 複数の値の問題

そのため、Boost program_options ライブラリの例の 1 つに取り組んでおり、複数値/ベクトル値の 1 つにデフォルト値を設定しようとしましたが、うまくいかないようです。私が思うに、ここで作業することをお勧めします

私が変更したのは40行目です。

この小さな変更をコンパイルすると、-I オプションが渡されない場合、"SOMETHING" がインクルード パス引数リストに追加されることが期待されます。

なぜこれが当てはまらないのか、誰にも分かりますか?

完全なソースコードは次のとおりです。

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

boost - boostprogram_optionsのオプションに限られた数の可能性を許可する

ブーストprogram_optionsに、特定のオプションの値の数が限られていることをどうにかして伝えることができますか?たとえば、オプション「--verbosity」はdebug、highまたはlow?!?のみです。

ありがとう!ネイサン

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

boost - boost :: program_options:名前空間に属しているときに自分のオプションタイプを宣言して検証する方法は?

boost :: program_optionsを使用すると、名前空間内で宣言されているときに、コンパイルする独自のオプションタイプを取得できません。ただし、名前空間の外では、コンパイルして正常に動作します。

main()で、オプション'm1'の宣言はコンパイルされますが、'm2'はコンパイルされません...何が欠けていますか?私はgccバージョン4.4.4でboost_1_43_0を使用しています。

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

c++ - Boostprogram_optionsの「複数回発生」例外

私はboostのprogram_options(バージョン1.42)で次のコードを書いています。これは簡単に思え、チュートリアルとほとんど同じです。ただし、「multiple_occurrences」エラーが発生します。さらに調査すると、それを発生させるのは(おそらく)「ファイル名」パラメータであることがわかります。

私が与えているパラメータは次のとおりです。

私はそれについて何の洞察も持っていません..どんな助けもいただければ幸いです。

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

c++ - リンク時にC++ライブラリが見つかりません。`boost::program_options`の例のコンパイル中にエラーが発生しました

私は自分のコンピューターでコンパイルするためにmultiple_sources.cppをコンパイルしようとしています。完全に更新されたXubuntuLucidLynxを実行しています。

問題なくコンパイルされますg++ -c multiple_sources.cppが、リンクして実行可能にしようとすると、次のようg++ multiple_sources.oになります。

et ceteraadnauseum

ライブラリをインストールしています:

g ++のマニュアルページを読んだ後、私も試しました:

  • g++ -llibboost_program_options multiple_sources.cpp
  • g++ -llibboost_program_options.a multiple_sources.cpp
  • g++ -llibboost_program_options.so multiple_sources.cpp
  • 上記のすべての-L/usr/lib -l

それらはすべて、次のバリエーションで失敗します。

私は何が間違っているのですか?

0 投票する
2 に答える
1421 参照

c++ - ブースト program_options は、最後のフラグの後のすべての値を受け入れます

boost::program_options で指定された引数の後にすべての値を収集する方法はありますか? ただし、注意が必要な点が 2 つあります。認識されない引数を受け入れる必要があることと、ダッシュを含む可能性のある値を受け入れる必要があることです。command_line_parser と parse_command_line をいじってみましたが、認識されないかダッシュを含む値のいずれかを取得できますが、両方を取得することはできません。

例: ./myprog Ignore1 Ignore2 --Accept 1 --AlsoAccept 2 --AcceptAll 1 2 -3 4

--AcceptAll が最後に渡されたフラグであることを確認することにはあまり関心がありません。そのフラグの後のすべての文字列のベクトルを返すロジックを探しています。

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

c++ - モジュラー プログラムで Boost.Program_options を使用する

私が使用するコードは、個々のライブラリにコンパイルされた一連のモジュールで構成されています。ライブラリは、さまざまな組み合わせでリンクされ、さ​​まざまなバイナリを構築します。

だから、それはかなり序数です。

異なるモジュールは異なるコマンド ライン引数を使用するため、解析に Boost.Program_options を使用したいと考えています。

コマンド ライン引数のセットは、どのライブラリがリンクされているかによって異なるため、事前にすべての引数がわからないため、それらを program_options::options_description に追加することはできません。

各モジュールにコマンドライン引数を追加し、後でそれらを読み取ることができるようにするにはどうすればよいですか?

ありがとう

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

c++ - boost::program_optionsでのみ短いオプション

ブーストの長い対応物なしで短いオプションを指定するにはどうすればよいでしょうか?

これを生成します

短いオプションのみを指定する方法はありますか?

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

c++ - 位置引数の解析

ブーストプログラムオプションの例から採用された次の簡単なプログラムを検討してください

次の動作は予想どおりです。

しかし、位置引数を導入したときに驚いたのですが、エラーとしてフラグが立てられていませんでした

なぜboost::program_options::too_many_positional_options_error例外がスローされないのですか?

0 投票する
2 に答える
6298 参照

c++ - boost::program_options - スペースや文字を含む文字列が含まれる複数のコマンド ライン引数を解析する

boost::program_options を使用して、複数のコマンド ライン引数を解析したいと考えています。ただし、一部の引数は二重引用符で囲まれた文字列です。これは私が持っているものです -

これは私がするときにうまくいきます

しかし、私がするときは動作しません

Windows コマンドラインから。2 番目のオプションでは["this" "is" "arg1" "this" "is" "arg2"]、createOptions ベクトルに変換されます。したがって、と の代わりにと をそれぞれval1取得"this"します。val2"is""this is arg1""this is arg2"

boost::program_option を使用してこれを機能させるにはどうすればよいですか?