この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
ja:cpp:array [2017/05/14 08:04] kota |
ja:cpp:array [2017/05/14 08:35] (現在) kota [std::fill()を使った初期化] |
||
---|---|---|---|
ライン 89: | ライン 89: | ||
---- | ---- | ||
+ | ===== std::fill()を使った初期化 ===== | ||
+ | * fillの引数は、(first Iterator、last iterator, value) | ||
+ | * std::vector とかだとstd::fill(vector.begin(), vector.end(), value);とかstd::fill_n(vector.begin(), vector.size(), value); | ||
+ | |||
+ | |||
+ | * 以下のコードではいずれも1で初期化。 | ||
+ | <code cpp> | ||
+ | #include <algorithm> | ||
+ | |||
+ | |||
+ | double array1[10]; | ||
+ | std::fill(array, &array[10], 1); | ||
+ | std::fill(array, array+10, 1);//これでもOK | ||
+ | std::fill_n(array, 10, 1);//これでもOK | ||
+ | |||
+ | |||
+ | double array2[10][20]; | ||
+ | std::fill(array2[0],array2[10],1); | ||
+ | |||
+ | double array3[10][20][30]; | ||
+ | std::fill(array3[0],array3[10],1); | ||
+ | |||
+ | </code> |