BohYoh.comトップページへ
C & C++ FAQ
目次

C++11 vectorの要素を任意の値で初期化する方法を教えてください。

 標準C++第3版(C++11)では、C言語の配列や構造体の初期化子として利用する{}構文が利用できるようになっています。
 この構文を利用したプログラム例を以下に示します。
#include <vector>
#include <iostream>

using namespace std;

int main()
{
	vector<int> v = {1, 2, 3, 4, 5};
	// ...
}
 これで、v[0]からv[4]は、1, 2, 3, 4, 5で初期化されます。
 {}形式のコンストラクタは、内部的には、言語支援ライブラリの一つであるstd::initializer_list<>クラステンプレートによって実現されています。



■ 根拠 ■
標準C++ 3rd §18.9 Initializer list

戻る

BohYoh.comロゴ