標準が連続していると定義しているという事実に加えて、なぜ std::vector が連続しているのでしょうか?
スペースが不足している場合は、続行する前に、新しいブロックを再割り当てし、古いブロックを新しいブロックにコピーする必要があります。
隣接していなかったら?ストレージがいっぱいになると、新しいブロックが割り当てられ、古いブロックが保持されます。イテレータを介してアクセスする場合、単純な >, < チェックを実行して、インデックスがどのブロックにあるかを確認し、それを返します。この方法では、スペースがなくなるたびに配列をコピーする必要はありません。
これは本当にうまくいきますか?または私は何かが欠けていますか?