この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
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> | ||