at
Z cppreference.com
Składnia:
#include <string>
char& at( size_type loc );
const char& at( size_type loc ) const;
Funkcja at zwraca znak w stringu znajdujący się na pozycji loc. Funkcja at jest bezpieczniejsza od operatora [], ponieważ nie zezwala na odwoływanie się do nieprawidłowych elementów (za końcem stringa).
Przykładowo:
string s("abcdef");
for( int i = 0; i < 10; i++ ) {
cout << "Element " << i << " to " << s[i] << endl;
}
Podany kod wybiega poza zakres stringa, co może sprawić problemy. Poniższy kod jest bezpieczniejszy dzięki użyciu funkcji at:
string s("abcdef");
for( int i = 0; i < 10; i++ ) {
cout << "Element " << i << " to " << s.at(i) << endl;
}
Zamiast odczytać bezużyteczne wartości z pamięci, funkcja at rzuci wyjątek, gdy będzie miało dojść do przekroczenia zakresu stringa.
Powiązane tematy: [] operator