Mi è stato insegnato il string::at
a scuola, ma esplorando la libreria di stringhe ho visto string::operator[]
, che non mi è mai stato mostrato prima.Qual è la differenza tra string :: at e string :: operator []?
Ora sto usando operator[]
e non ho usato at
da allora, ma qual è la differenza? Ecco alcuni esempi di codice:
std::string foo = "my redundant string has some text";
std::cout << foo[5];
std::cout << foo.at(5);
Essi sono essenzialmente gli stessi in termini di produzione, ma ci sono alcune sottili differenze che non sono a conoscenza?
Hai provato un punto di riferimento per ciascuno? C'è una differenza, che dovrebbe essere abbastanza facile da individuare quando si confrontano i riferimenti. – chris
Aspetta, hai deciso di passare da '.at()' a 'operator []' * prima * guardando un libro o un riferimento online? – us2012
beh, ho letto che l'operatore [] era più veloce, ma non sapeva perché ... –