Biblioteca C ++ Array - Função at ()

Descrição

A função C ++ std::array::at() retorna uma referência ao elemento presente na localização N em determinado contêiner de matriz.

Declaração

A seguir está a declaração para o formulário de função std :: array :: at () std :: array header.

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

Parâmetros

N - índice de um elemento na matriz.

Valor de retorno

Retorna um elemento presente no índice N em determinado array se N é um índice válido, caso contrário, lança out_of_range exceção.

Se o objeto de matriz for const-qualificado, o método retorna a referência const, caso contrário, ele retorna a referência.

Exceções

Esta função de membro lança out_of_range expception se o valor de N não for um índice de array válido.

Complexidade de tempo

Constante, ou seja, O (1)

Exemplo

No exemplo a seguir, a etapa 1 imprime o conteúdo do array sem exceção. A etapa 2 mostra o tratamento de exceções usando o bloco 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;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

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