C ++ Array Library - Funzione at ()

Descrizione

La funzione C ++ std::array::at() restituisce un riferimento all'elemento presente nella posizione N in un dato contenitore di array.

Dichiarazione

Di seguito è riportata la dichiarazione per la funzione std :: array :: at () nel modulo std :: array header.

reference at(size_type n);
cont_referece at(size_t n) const;

Parametri

N - indice di un elemento nell'array.

Valore di ritorno

Restituisce un elemento presente all'indice N in un dato array se N è un indice valido altrimenti genera out_of_range eccezione.

Se l'oggetto array è qualificato da const, il metodo restituisce il riferimento const, altrimenti restituisce il riferimento.

Eccezioni

Questa funzione membro genera out_of_range expception se il valore di N non è un indice di matrice valido.

Complessità temporale

Costante cioè O (1)

Esempio

Nell'esempio seguente, il passaggio 1 stampa il contenuto dell'array senza eccezioni. Il passaggio 2 mostra la gestione delle eccezioni utilizzando il blocco try-catch.

#include <iostream>
#include <array>
#include <stdexcept>

using namespace std;

int main(void) {
   array<int, 5> arr = {10, 20, 30, 40, 50};
   size_t i;

   /* print array contents */
   for (i = 0; i < 5; ++i)
      cout << arr.at(i) << " ";
   cout << endl;

   /* generate out_of_range exception. */
   try {
      arr.at(10);
   } catch(out_of_range e) {
      cout << "out_of_range expcepiton caught for " << e.what() << endl;
   }

   return 0;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

10 20 30 40 50 
out_of_range expcepiton caught for array::at: __n (which is 10) >= _Nm (which is 5)