使用例:
int table[]={111,222,333};
for_each(table, &table[_countof(table)],
for_each(begin(table), end(table),
[](int& a){ printf("%d\n",a*1000); }
);
実行結果
111000
222000
333000
間違えやすい点
for_eachの引数だが
先頭ポインタと最終ポインタ+1
間違えやすい点は +1 注意しよう
上記、&table[_countof(table)] は &table[3] になる。違和感があるかもしれない。しかし、そういう仕様になっている。
だが、begin(~) end(~) を使えばよかっただけだった・・・
STLで普通の配列を使用する場合、
~.end() に相当するのは、最終ポインタ+1
になる。