まぁ、
for (std::vector<int>::const_iterator it = v.begin(); it != v.end(); ++it) {
sum += * it;
}
くらいなら
for (int ic = 0; ic < end; ++ic) {
sum += a[ic];
}
と同じ程度のコードを吐くコンパイラくらいいくらでもあるだろ。