at
Z cppreference.com
Skadnia:
#include <string>
char& at( size_type loc );
const char& at( size_type loc ) const;
Funkcja at zwraca znak w stringu znajdujcy si na pozycji loc. Funkcja at jest bezpieczniejsza od operatora [], poniewa nie zezwala na odwoywanie si do nieprawidowych elementw (za kocem stringa).
Przykadowo:
string s("abcdef");
for( int i = 0; i < 10; i++ ) {
cout << "Element " << i << " to " << s[i] << endl;
}
Podany kod wybiega poza zakres stringa, co moe sprawi problemy. Poniszy kod jest bezpieczniejszy dziki uyciu funkcji at:
string s("abcdef");
for( int i = 0; i < 10; i++ ) {
cout << "Element " << i << " to " << s.at(i) << endl;
}
Zamiast odczyta bezuyteczne wartoci z pamici, funkcja at rzuci wyjtek, gdy bdzie miao doj do przekroczenia zakresu stringa.
Powizane tematy: [] operator