2017-04-30 11 views
-3

私はvectorをC++で持っています。boolのベクトルの1つの要素を除くすべての要素をtrueに設定するにはどうすればよいですか?

vector<bool> trumpIsGoodFor(42); 

私はtrueに24の要素以外のすべての要素を設定する必要があります。

私は1/2行、またはエレガントなのC++ 11/14を使用した割り当てを使用したいと思います。

+0

あなたは_except_を意味しますか? – Charles

+0

@ c650はい、24番目の要素を残すすべての要素。 – rrai

答えて

8

これにはconstructorがあります。簡単に十分なようだ:

std::vector<bool> vec(42, true); 
vec[23] = false; /* didn't know if you meant 24th in 0-index or 1-index */ 
+0

保証は – rrai

+6

ですか? – Charles

2

あなたがここにVector Constructorのためのマニュアルを参照してくださいすることができ、コンストラクタ

vector<bool> trumpIsGoodFor(42,true); 
trumpIsGoodFor.at(23) = false; //use you can also use [23] subscript 

を使用することができます。

std::vectorには、.at()ファンクションが含まれており、インデックスがベクターの範囲内にあるかどうかを確認します。documentation here

関連する問題