Warum ist "vector.at (x)" in C ++ besser als "vector [x]"?

Wenn ich einen Wert in Vektor erhalten möchte, kann ich zwei Optionen verwenden: Verwenden Sie den Operator []. Oder ich verwende die Funktion .at zum Beispiel für die Verwendung von:

vector<int> ivec;
ivec.push_back(1);

Jetzt kann ich beides machen

int x1 = ivec[0];
int x2 = ivec.at(0); // or

Ich habe gehört, dass die Verwendung von at eine bessere Option ist, da ich diese Option in einer Ausnahme auslösen kann, wenn ich sie verwende.

Kann das bitte jemand erklären?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage