2012-03-16 11 views
2

boost :: program_optionsを使ってコンソールから整数配列を読みたい。配列の長さは分かっていないので、すべてのデータを1回の試行で読み取る必要はありません。どうやってやるの?私が今やっている何をboost :: program_optionsコンソールから整数配列を読み取る

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

され、その後[] ARR入力文字列を分割して取り込みます。

しかし、私は[]

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

とARRにそれを読むような何かをしたいです。また、arr []の長さを知りたければ、その行をコマンドライン引数にしたくありません。

答えて

5

配列の代わりにベクトルを使用します。

po::options_description desc("Allowed options"); 
desc.add_options() 
    ("array", po::value< vector<int> >()) 
; 

コマンドラインの各オプションがベクターに追加されます。

+0

ありがとう、それは助けました。 –

関連する問題