Sintassi:
#include <deque> T& at( size_type loc ); const T& at( size_type loc ) const;
La funzione at() ritorna una reference all'elemento nella deque collocato
alla posizione con indice loc. La funzione at() è più sicura dell'operatore [], perchè
non permette di accedere a posizioni al di fuori dei limiti della deque
Esempio: considerate il seguente codice
deque<int> v( 5, 1 ); for( int i = 0; i < 10; i++ ) { cout << "Element " << i << " is " << dq[i] << endl; }
Il codice tenta di uscire dalla fine della deque, producendo risultati potenzialmente
pericolosi. Il codice seguente è molto più sicuro.
deque<int> v( 5, 1 ); for( int i = 0; i < 10; i++ ) { cout << "Element " << i << " is " << dq.at(i) << endl; }
Invece di tentare di leggere valori senza senso dalla memoria at() si accorge di quanto sta accadendo e lancia un eccezione
Argomenti correlati: [] operator