2012-10-28 7 views
53
Iは std::vectorを初期化する同様の方法があり、彼らはそのような

はゼロにベクトルを初期化するC++/C++ 11

double number = {}; // number = 0 
int data{}; // data = 0 

としてゼロに変数を初期化する機能を追加したC++ 11で知る

すべてのゼロに固定長さ?あなたはそのための初期化リストを必要としない

+8

'のstd ::ベクトル VEC(42);' – avakar

+5

はところで、これはC++ 11には新しいものではありません、あなたはこの中に操作を行うことができます以前のバージョンも同様に – balki

答えて

116

std::vector<int> vector1(length, 0); 
std::vector<double> vector2(length, 0.0); 
+17

あなたは0を明示的に述べる必要はありませんか? 'ベクトル(長さ)'だけはうまくいくはずですか? – jozefg

+18

@jozefg:はい、うまくいきますが、コードで何をしたいかについて明示的に害を及ぼすことはありません。 – ronag

+0

@ronag私は自分の答えを書いています。なぜなら、この場合明示的であるのは、intが彼が働いている型ではない場合、必ずしも良い例ではないからです。 gereralプログラミングはC++で利用可能ですが、あなたが引数を完全に省略することができることを思い出したとき、私は私の答えを削除しました。 –

関連する問題