array Classe (Biblioteca Padrão C++)

Descreve um objeto que controla uma sequência de comprimentos N de elementos do tipo Ty. A sequência é armazenada como um array de Ty, contido no array<Ty, N> objeto.

Syntax

template <class Ty, std::size_t N>
class array;

Parameters

Ty
O tipo de um elemento.

N
O número de elementos.

Members

Definição de Tipo Description
const_iterator O tipo de iterador constante para a sequência controlada.
const_pointer O tipo de um ponteiro constante para um elemento.
const_reference O tipo de referência constante a um elemento.
const_reverse_iterator O tipo de iterador reverso constante para a sequência controlada.
difference_type O tipo de distância assinada entre dois elementos.
iterator O tipo de iterador para a sequência controlada.
pointer O tipo de um ponteiro para um elemento.
reference O tipo de referência a um elemento.
reverse_iterator O tipo de iterador reverso para a sequência controlada.
size_type O tipo de uma distância não assinada entre dois elementos.
value_type O tipo de um elemento.
Função de Membro Description
array Constrói um objeto de array.
at Acessa um elemento em uma posição especificada.
back Acessa o último elemento.
begin Designa o início da sequência controlada.
cbegin Devolve um iterador const de acesso aleatório ao primeiro elemento do array.
cend Devolve um iterador const de acesso aleatório que aponta logo para além do fim do array.
crbegin Devolve um iterador const ao primeiro elemento de um array invertido.
crend Devolve um iterador const ao final de um array invertido.
data Obtém o endereço do primeiro elemento.
empty Testa a presença de elementos.
end Designa o final da sequência controlada.
fill Substitui todos os elementos por um valor especificado.
front Acessa o primeiro elemento.
max_size Conta o número de elementos.
rbegin Designa o início da sequência controlada invertida.
rend Designa o final da sequência controlada invertida.
size Conta o número de elementos.
swap Troca o conteúdo de dois contêineres.
Operador Description
array::operator= Substitui a sequência controlada.
array::operator[] Acessa um elemento em uma posição especificada.

Remarks

O tipo tem um construtor array() por defeito e um operador operator=de atribuição por defeito , e satisfaz os requisitos para um aggregate. Assim, objetos do tipo array<Ty, N> podem ser inicializados usando um inicializador agregado. Por exemplo

array<int, 4> ai = { 1, 2, 3 };

cria o objeto ai que contém quatro valores inteiros, inicializa os três primeiros elementos nos valores 1, 2 e 3, respetivamente, e inicializa o quarto elemento em 0.

Requirements

Cabeçalho:<array>

Espaço de nomes:std

array::array

Constrói um objeto de array.

array();

array(const array& right);

Parameters

right
Objeto ou intervalo a ser inserido.

Remarks

O construtor array() por defeito deixa a sequência controlada sem inicializar (ou por defeito). Usa-se para especificar uma sequência controlada não inicializada.

O construtor array(const array& right) de cópias inicializa a sequência controlada com a sequência [direita.begin(), direita.end()). Utiliza-o para especificar uma sequência controlada inicial que é uma cópia da sequência controlada pelo objeto rightarray .

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    Myarray c1(c0);

    // display contents " 0 1 2 3"
    for (const auto& it : c1)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0 1 2 3

array::at

Acessa um elemento em uma posição especificada.

reference at(size_type off);

constexpr const_reference at(size_type off) const;

Parameters

off
Posição do elemento a aceder.

Remarks

As funções membro retornam uma referência ao elemento da sequência controlada na posição off. Se essa posição for inválida, a função lança um objeto da classe out_of_range.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display odd elements " 1 3"
    std::cout << " " << c0.at(1);
    std::cout << " " << c0.at(3);
    std::cout << std::endl;

    return (0);
}

array::back

Acessa o último elemento.

reference back();

constexpr const_reference back() const;

Remarks

As funções membro retornam uma referência ao último elemento da sequência controlada, que deve ser não vazio.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display last element " 3"
    std::cout << " " << c0.back();
    std::cout << std::endl;

    return (0);
}
0 1 2 3
3

array::begin

Designa o início da sequência controlada.

iterator begin() noexcept;
const_iterator begin() const noexcept;

Remarks

As funções membros retornam um iterador de acesso aleatório que aponta para o primeiro elemento da sequência (ou logo para além do fim de uma sequência vazia).

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::iterator it2 = c0.begin();
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::cbegin

Retorna um iterador const que aborda o primeiro elemento no intervalo.

const_iterator cbegin() const noexcept;

Valor de retorno

Um iterador de acesso aleatório const que aponta para o primeiro elemento do intervalo ou para o local logo após o final de um intervalo vazio (para um intervalo vazio, cbegin() == cend()).

Remarks

Com o valor de retorno de cbegin, os elementos no intervalo não podem ser modificados.

Você pode usar essa função de membro no lugar da função de membro begin() para garantir que o valor de retorno seja const_iterator. Normalmente, é usado com a auto palavra-chave dedução de tipo, como mostrado no exemplo seguinte. No exemplo, considere Container como um recipiente modificável (não const) de qualquer tipo que suporte begin() e cbegin().

auto i1 = Container.begin();
// i1 is Container<T>::iterator
auto i2 = Container.cbegin();

// i2 is Container<T>::const_iterator

array::cend

Retorna um iterador const que aborda o local logo após o último elemento de um intervalo.

const_iterator cend() const noexcept;

Valor de retorno

Um iterador de acesso aleatório que aponta logo para além do fim do intervalo.

Remarks

cend é usado para testar se um iterador passou no final de seu intervalo.

Você pode usar essa função de membro no lugar da função de membro end() para garantir que o valor de retorno seja const_iterator. Normalmente, é usado com a auto palavra-chave dedução de tipo, como mostrado no exemplo seguinte. No exemplo, considere Container como um recipiente modificável (não const) de qualquer tipo que suporte end() e cend().

auto i1 = Container.end();
// i1 is Container<T>::iterator
auto i2 = Container.cend();

// i2 is Container<T>::const_iterator

O valor retornado por cend não deve ser desreferenciado.

array::const_iterator

O tipo de iterador constante para a sequência controlada.

typedef implementation-defined const_iterator;

Remarks

O tipo descreve um objeto que pode servir como iterador de acesso aleatório constante para a sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> MyArray;

int main()
{
    MyArray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    std::cout << "it1:";
    for (MyArray::const_iterator it1 = c0.begin();
        it1 != c0.end();
        ++it1) {
        std::cout << " " << *it1;
    }
    std::cout << std::endl;

    // display first element " 0"
    MyArray::const_iterator it2 = c0.begin();
    std::cout << "it2:";
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
it1: 0 1 2 3
it2: 0

array::const_pointer

O tipo de um ponteiro constante para um elemento.

typedef const Ty *const_pointer;

Remarks

O tipo descreve um objeto que pode servir como um apontador constante para elementos da sequência.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::const_pointer ptr = &*c0.begin();
    std::cout << " " << *ptr;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::const_reference

O tipo de referência constante a um elemento.

typedef const Ty& const_reference;

Remarks

O tipo descreve um objeto que pode servir como referência constante a um elemento da sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::const_reference ref = *c0.begin();
    std::cout << " " << ref;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::const_reverse_iterator

O tipo de iterador reverso constante para a sequência controlada.

typedef std::reverse_iterator<const_iterator> const_reverse_iterator;

Remarks

O tipo descreve um objeto que pode servir como iterador inverso constante para a sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display last element " 3"
    Myarray::const_reverse_iterator it2 = c0.rbegin();
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
3

array::crbegin

Devolve um iterador const ao primeiro elemento de um array invertido.

const_reverse_iterator crbegin() const;

Valor de retorno

Um iterador de acesso aleatório reverso const que endereça o primeiro elemento de um array invertido ou que tinha sido o último elemento do array não invertido.

Remarks

Com o valor de retorno de crbegin, o objeto array não pode ser modificado.

Exemplo

#include <array>
#include <iostream>

int main( )
{
   using namespace std;
   array<int, 2> v1 = {1, 2};
   array<int, 2>::iterator v1_Iter;
   array<int, 2>::const_reverse_iterator v1_rIter;

   v1_Iter = v1.begin( );
   cout << "The first element of array is "
        << *v1_Iter << "." << endl;

   v1_rIter = v1.crbegin( );
   cout << "The first element of the reversed array is "
        << *v1_rIter << "." << endl;
}
The first element of array is 1.
The first element of the reversed array is 2.

array::crend

Devolve um iterador const que aborda a localização que sucede ao último elemento num array invertido.

const_reverse_iterator crend() const noexcept;

Valor de retorno

Um iterador de acesso aleatório reverso const que aborda a localização que sucede ao último elemento num array invertido (a localização que precedeu o primeiro elemento no array não invertido).

Remarks

crend é usado com um array invertido, tal como array::cend é usado com um array.

Com o valor de retorno de crend (devidamente decrementado), o objeto array não pode ser modificado.

crend pode ser usado para testar se um iterador reverso atingiu o fim do seu array.

O valor retornado por crend não deve ser desreferenciado.

Exemplo

#include <array>
#include <iostream>

int main( )
{
   using namespace std;
   array<int, 2> v1 = {1, 2};
   array<int, 2>::const_reverse_iterator v1_rIter;

   for ( v1_rIter = v1.rbegin( ) ; v1_rIter != v1.rend( ) ; v1_rIter++ )
      cout << *v1_rIter << endl;
}
2
1

array::data

Obtém o endereço do primeiro elemento.

Ty *data();

const Ty *data() const;

Remarks

As funções membros retornam o endereço do primeiro elemento na sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::pointer ptr = c0.data();
    std::cout << " " << *ptr;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::difference_type

O tipo de distância assinada entre dois elementos.

typedef std::ptrdiff_t difference_type;

Remarks

O tipo inteiro assinado descreve um objeto que pode representar a diferença entre os endereços de quaisquer dois elementos na sequência controlada. É sinónimo do tipo std::ptrdiff_t.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display distance first-last " -4"
    Myarray::difference_type diff = c0.begin() - c0.end();
    std::cout << " " << diff;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
-4

array::empty

Testa se nenhum elemento está presente.

constexpr bool empty() const;

Remarks

A função membro retorna verdadeira apenas se N == 0.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display whether c0 is empty " false"
    std::cout << std::boolalpha << " " << c0.empty();
    std::cout << std::endl;

    std::array<int, 0> c1;

    // display whether c1 is empty " true"
    std::cout << std::boolalpha << " " << c1.empty();
    std::cout << std::endl;

    return (0);
}
0 1 2 3
false
true

array::end

Designa o final da sequência controlada.

reference end();

const_reference end() const;

Remarks

As funções membros retornam um iterador de acesso aleatório que aponta logo para além do fim da sequência.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display last element " 3"
    Myarray::iterator it2 = c0.end();
    std::cout << " " << *--it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
3

array::fill

Apaga um array e copia os elementos especificados para o array vazio.

void fill(const Type& val);

Parameters

val
O valor do elemento inserido no array.

Remarks

fill substitui cada elemento do array pelo valor especificado.

Exemplo

#include <array>
#include <iostream>

int main()
{
    using namespace std;
    array<int, 2> v1 = { 1, 2 };

    cout << "v1 = ";
    for (const auto& it : v1)
    {
        std::cout << " " << it;
    }
    cout << endl;

    v1.fill(3);
    cout << "v1 = ";
    for (const auto& it : v1)
    {
        std::cout << " " << it;
    }
    cout << endl;
}

array::front

Acessa o primeiro elemento.

reference front();

constexpr const_reference front() const;

Remarks

As funções membro retornam uma referência ao primeiro elemento da sequência controlada, que deve ser não vazia.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    std::cout << " " << c0.front();
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::iterator

O tipo de iterador para a sequência controlada.

typedef implementation-defined iterator;

Remarks

O tipo descreve um objeto que pode servir como iterador de acesso aleatório para a sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> MyArray;

int main()
{
    MyArray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    std::cout << "it1:";
    for (MyArray::iterator it1 = c0.begin();
        it1 != c0.end();
        ++it1) {
        std::cout << " " << *it1;
    }
    std::cout << std::endl;

    // display first element " 0"
    MyArray::iterator it2 = c0.begin();
    std::cout << "it2:";
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
it1: 0 1 2 3

it2: 0

array::max_size

Conta o número de elementos.

constexpr size_type max_size() const;

Remarks

A função membro devolve N.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display (maximum) size " 4"
    std::cout << " " << c0.max_size();
    std::cout << std::endl;

    return (0);
}
0 1 2 3
4

array::operator[]

Acessa um elemento em uma posição especificada.

reference operator[](size_type off);

constexpr const_reference operator[](size_type off) const;

Parameters

off
Posição do elemento a aceder.

Remarks

As funções membro retornam uma referência ao elemento da sequência controlada na posição off. Se essa posição for inválida, o comportamento é indefinido.

Existe também uma função não-membro get disponível para obter uma referência a um elemento de um array.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display odd elements " 1 3"
    std::cout << " " << c0[1];
    std::cout << " " << c0[3];
    std::cout << std::endl;

    return (0);
}
0 1 2 3
1 3

array::operator=

Substitui a sequência controlada.

array<Value> operator=(array<Value> right);

Parameters

right
Recipiente para copiar.

Remarks

O operador membro atribui cada elemento de right ao elemento correspondente da sequência controlada, depois devolve *this. Use-o para substituir a sequência controlada por uma cópia da sequência controlada no right.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    Myarray c1;
    c1 = c0;

    // display copied contents " 0 1 2 3"
        // display contents " 0 1 2 3"
    for (auto it : c1)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0 1 2 3

array::pointer

O tipo de um ponteiro para um elemento.

typedef Ty *pointer;

Remarks

O tipo descreve um objeto que pode servir como apontador para elementos da sequência.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::pointer ptr = &*c0.begin();
    std::cout << " " << *ptr;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::rbegin

Designa o início da sequência controlada invertida.

reverse_iterator rbegin()noexcept;
const_reverse_iterator rbegin() const noexcept;

Remarks

As funções membros retornam um iterador inverso que aponta logo para além do fim da sequência controlada. Por isso, designa o início da sequência inversa.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display last element " 3"
    Myarray::const_reverse_iterator it2 = c0.rbegin();
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
3

array::reference

O tipo de referência a um elemento.

typedef Ty& reference;

Remarks

O tipo descreve um objeto que pode servir de referência a um elemento da sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::reference ref = *c0.begin();
    std::cout << " " << ref;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::rend

Designa o final da sequência controlada invertida.

reverse_iterator rend()noexcept;
const_reverse_iterator rend() const noexcept;

Remarks

As funções membros retornam um iterador inverso que aponta para o primeiro elemento da sequência (ou logo para além do fim de uma sequência vazia). Assim, designa o fim da sequência inversa.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display first element " 0"
    Myarray::const_reverse_iterator it2 = c0.rend();
    std::cout << " " << *--it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0

array::reverse_iterator

O tipo de iterador reverso para a sequência controlada.

typedef std::reverse_iterator<iterator> reverse_iterator;

Remarks

O tipo descreve um objeto que pode servir como iterador inverso para a sequência controlada.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display last element " 3"
    Myarray::reverse_iterator it2 = c0.rbegin();
    std::cout << " " << *it2;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
3

array::size

Conta o número de elementos.

constexpr size_type size() const;

Remarks

A função membro devolve N.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display size " 4"
    std::cout << " " << c0.size();
    std::cout << std::endl;

    return (0);
}
0 1 2 3
4

array::size_type

O tipo de uma distância não assinada entre dois elementos.

typedef std::size_t size_type;

Remarks

O tipo inteiro sem sinal descreve um objeto que pode representar o comprimento de qualquer sequência controlada. É sinónimo do tipo std::size_t.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display distance last-first " 4"
    Myarray::size_type diff = c0.end() - c0.begin();
    std::cout << " " << diff;
    std::cout << std::endl;

    return (0);
}
0 1 2 3
4

array::swap

Troca o conteúdo deste array com outro array.

void swap(array& right);

Parameters

right
Array para trocar conteúdos.

Remarks

A função de membro troca as sequências controladas entre *this e direito. Realiza atribuições de elementos e chamadas de construtores proporcionais a N.

Existe também uma função não-membro swap disponível para trocar duas array instâncias.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    Myarray c1 = { 4, 5, 6, 7 };
    c0.swap(c1);

    // display swapped contents " 4 5 6 7"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    swap(c0, c1);

    // display swapped contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    return (0);
}
0 1 2 3
4 5 6 7
0 1 2 3

array::value_type

O tipo de um elemento.

typedef Ty value_type;

Remarks

O tipo é um sinônimo para o parâmetro de modelo Ty.

Exemplo

#include <array>
#include <iostream>

typedef std::array<int, 4> Myarray;
int main()
{
    Myarray c0 = { 0, 1, 2, 3 };

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        std::cout << " " << it;
    }
    std::cout << std::endl;

    // display contents " 0 1 2 3"
    for (const auto& it : c0)
    {
        Myarray::value_type val = it;
        std::cout << " " << val;
    }
    std::cout << std::endl;

    return (0);
}
0 1 2 3
0 1 2 3

Ver também

<array>