初等的なバグ

今日取れたバグの中にとてつもなく初等的なものが含まれていたので自戒の意味を込めてメモ。
C++vectoriterator
hoge.end()
が最後の要素の「次」を返すというのを忘れてたまにはまってしまう。
似たような…というかもっと初心者的なものとして、
hoge[random] ないしは hoge.at(random)
のようにrandom番目の要素を取り出す時に
rand.randInt(hoge.size())
とすると触ってはいけないところを触ってしまう。0から始まるってとっても基本な気がするんですけれども。