vector.at(i)
とはどう違いvector[i]
ますか?
vector<int> myVector(6);
myVector.at(5) = 5;
また
myVector[5] = 5;
どちらも同じ結果になることはわかっていますが、どういうわけか演算子の[]
方が高速です。at
また、ベクトルサイズ(境界)のチェックについて読み、範囲外エラーを返しますが、そうではあり[]
ません。
ただし、割り当てようとすると次のことがわかりました。
myVector[8] = 1;
デバッグ モードでも同様の範囲外エラーが発生します。
では、 の意味はat
何ですか?なぜ STL にあるのですか?