C++ Accedere a un personaggio


Esempio

Esistono diversi modi per estrarre i caratteri da una std::string e ognuno è sottilmente differente.

std::string str("Hello world!");

operatore [] (n)

Restituisce un riferimento al carattere all'indice n.

std::string::operator[] non è controllato e non genera un'eccezione. Il chiamante è responsabile per affermare che l'indice si trova all'interno dell'intervallo della stringa:

char c = str[6]; // 'w'

a (n)

Restituisce un riferimento al carattere all'indice n.

std::string::at is bounds checked, e getterà std::out_of_range se l'indice non è all'interno dell'intervallo della stringa:

char c = str.at(7); // 'o'
C ++ 11

Nota: entrambi questi esempi generano un comportamento indefinito se la stringa è vuota.


davanti()

Restituisce un riferimento al primo carattere:

char c = str.front(); // 'H'

indietro()

Restituisce un riferimento all'ultimo carattere:

char c = str.back(); // '!'