vectorでのforeach
const int nCount = vec.size(); for(int i = 0; i < nCount; ++i) { vec[i]を使った何か }
と
std::vector<asdf>::iterator i, iEnd = vec.end(); for(i = vec.begin(); i != iEnd; ++ i) { *iを使った何か }
はどっちが早いんだろう?
どっちも理論的には同じくらいの速さのはずだけど、イテレータを使った場合でもループ展開はちゃんと行われるのかな?
あとで検証するかも。