>>267
最も正統派なのはこうかな?
for(decltype(v)::size_type i=0; i<v.size(); i++)
常識的に考えてコンテナの size_type が std::size_t より大きいことはあまりない (大抵は等しい) と思うので、面倒なときは std::size_t を使う。

本当に上限が限られていてその上限が変更されることがあり得ないほどそのプログラムにとって
本質的なものだと判断すれば int でいいやってこともあるといえばあるだろうし、
同じようなパターンが何度も現れるならアダプタを作った上で範囲forというのも考えられる。

状況によるでしょ。