for のループカウンタがいじれて辛い問題
ぶんちょうさんが Twitter / yutopp: forループで
for(int i=0; ...と おっしゃっていたので.
boost::for_each(boost::irange(begin, end), [](int i) { ...; }); な書き方は良いんですが,個人的にめんどくさいので for みたいに書けた方が良い.
ただループ変数を知らぬ間に辺なところで弄るので詰む.
explicit bool と operator T 使えばなんとなくいけるんじゃないですか.
Ideone.com - KxwKwb - Online C++0x Compiler & Debugging Tool
規格的に問題ない... と思う.
突っ込まれたし正論なので
for(auto const i : boost::irange(0, 10)) { ... } とかで良い.
政治的な理由等々により Boost の使用が禁止されている場合は boost::irange 自作とかで.