>>767
こちらで試した例
https://ideone.com/2WVu4k ……@

@の実行結果は ideone でも、私のローカル環境でも、いろいろ変わりますね

>C++はrange checkしない
これは正しいです。そしてコンパイル時エラーはおこりません。

>最後の次の要素を指し示すイテレーターに対して、*で要素にアクセスを試みるとエラーになる。
は、その文章でいう「エラー」という言葉が具体的に何を表現しているかが曖昧模糊と言う意味で正確ではありません

1)実行時エラー: *p でアクセスしようとすると「Segmentation Falut」等で、実行プロセスが OS により強制終了させられる
2)実行時エラーすら発生せず、シレっと値を読み込むが、その値は書き手のコントロールの外であるから適当かつ予測できない値だったりする
3) その他(どんなパターンがあるかは私にもわからない)

@ではイテレータ p が v.begin() を超えてもしばらくは上記 2) 、おもむろに 1) が発生して終了しました
いろいろ言いましたが、イテレータが意味のある領域を指していることを保証するのはプログラマの責任ということです、それができなかったときのエラーの様態は千差万別で一つに定めることは不可能でしょう