Clase array (biblioteca estándar de C++)

Describe un objeto que controla una secuencia de longitud N de elementos de tipo Ty. La secuencia se almacena como matriz de Ty, que se encuentra en el objeto array<Ty, N>.

Sintaxis

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

Parámetros

Ty
El tipo de un elemento.

N
Número de elementos.

Miembros

Definición de tipo Descripción
const_iterator El tipo de un iterador constante para la secuencia controlada.
const_pointer El tipo de un puntero constante a un elemento.
const_reference El tipo de una referencia constante a un elemento.
const_reverse_iterator El tipo de un iterador invertido constante para la secuencia controlada.
difference_type El tipo de una distancia con signo entre dos elementos.
iterator El tipo de un iterador para la secuencia controlada.
pointer El tipo de un puntero a un elemento.
reference El tipo de una referencia a un elemento.
reverse_iterator El tipo de un iterador invertido para la secuencia controlada.
size_type El tipo de una distancia sin signo entre dos elementos.
value_type El tipo de un elemento.
Función miembro Descripción
array Construye un objeto de matriz.
assign (Obsoleto. Use fill). Reemplaza todos los elementos.
at Obtiene acceso a un elemento en una posición especificada.
back Obtiene acceso al último elemento.
begin Designa el principio de la secuencia controlada.
cbegin Devuelve un iterador const de acceso aleatorio al primer elemento de la matriz.
cend Devuelve un iterador const de acceso aleatorio que apunta justo después del final de la matriz.
crbegin Devuelve un iterador constante al primer elemento de una matriz inversa.
crend Devuelve un iterador constante al final de una matriz invertida.
data Obtiene la dirección del primer elemento.
empty Comprueba si hay algún elemento presente.
end Designa el final de la secuencia controlada.
fill Reemplaza todos los elementos por un valor especificado.
front Obtiene acceso al primer elemento.
max_size Cuenta el número de elementos.
rbegin Designa el principio de la secuencia controlada inversa.
rend Designa el final de la secuencia controlada inversa.
size Cuenta el número de elementos.
swap Intercambia el contenido de dos contenedores.
Operator Descripción
array::operator= Reemplaza la secuencia controlada.
array::operator[] Obtiene acceso a un elemento en una posición especificada.

Comentarios

El tipo tiene un constructor predeterminado array() y un operador de asignación predeterminado operator=, y cumple los requisitos de un aggregate. Por lo tanto, los objetos de tipo array<Ty, N> se pueden inicializar con un inicializador agregado. Por ejemplo,

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

crea el objeto ai que contiene cuatro valores enteros, inicializa los tres primeros elementos a los valores 1, 2 y 3, respectivamente, e inicializa el cuarto a 0.

Requisitos

Encabezado<array>:

Espacio de nombres:std

array::array

Construye un objeto de matriz.

array();

array(const array& right);

Parámetros

right
Objeto o intervalo que se va a insertar.

Comentarios

El constructor predeterminado array() deja la secuencia controlada sin inicializar (o inicializada de forma predeterminada). Se usa para especificar una secuencia controlada sin inicializar.

El constructor de copias array(const array& right) inicializa la secuencia controlada con la secuencia [right.begin(), right.end()). Se usa para especificar una secuencia controlada inicial que es una copia de la secuencia controlada por el objeto de matriz right.

Ejemplo

#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::assign

Obsoleto en C++11, se reemplazó por fill. Reemplaza todos los elementos.

array::at

Obtiene acceso a un elemento en una posición especificada.

reference at(size_type off);

constexpr const_reference at(size_type off) const;

Parámetros

off
Posición del elemento al que se accederá.

Comentarios

Las funciones miembro devuelven una referencia al elemento de la secuencia controlada en la posición off. Si esa posición no es válida, la función produce un objeto de clase out_of_range.

Ejemplo

#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

Obtiene acceso al último elemento.

reference back();

constexpr const_reference back() const;

Comentarios

Las funciones miembro devuelven una referencia al último elemento de la secuencia controlada, que no debe estar vacío.

Ejemplo

#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 el principio de la secuencia controlada.

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

Comentarios

Las funciones miembro devuelven un iterador de acceso aleatorio que apunta al primer elemento de la secuencia (o más allá del final de una secuencia vacía).

Ejemplo

#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

Devuelve un iterador const que direcciona el primer elemento del intervalo.

const_iterator cbegin() const noexcept;

Valor devuelto

Iterador const de acceso aleatorio que apunta al primer elemento del intervalo o la ubicación situada más allá del final de un intervalo vacío (para un intervalo vacío, cbegin() == cend()).

Comentarios

Con el valor devuelto de cbegin, los elementos del intervalo no se pueden modificar.

Se puede usar esta función miembro en lugar de la función miembro begin() para garantizar que el valor devuelto es const_iterator. Por lo general, se usa junto con la palabra clave de deducción de tipos auto, como se muestra en el ejemplo siguiente. En el ejemplo se considera que Container es un contenedor modificable (distinto de const) de cualquier naturaleza que admite begin() y cbegin().

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

// i2 is Container<T>::const_iterator

array::cend

Devuelve un iterador const que direcciona la ubicación situada más allá del último elemento de un intervalo.

const_iterator cend() const noexcept;

Valor devuelto

Iterador de acceso aleatorio que apunta justo después del final del intervalo.

Comentarios

cend se usa para probar si un iterador ha sobrepasado el final de su intervalo.

Se puede usar esta función miembro en lugar de la función miembro end() para garantizar que el valor devuelto es const_iterator. Por lo general, se usa junto con la palabra clave de deducción de tipos auto, como se muestra en el ejemplo siguiente. En el ejemplo se considera que Container es un contenedor modificable (distinto de const) de cualquier naturaleza que admite end() y cend().

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

// i2 is Container<T>::const_iterator

El valor devuelto por cend no se debe desreferenciar.

array::const_iterator

El tipo de un iterador constante para la secuencia controlada.

typedef implementation-defined const_iterator;

Comentarios

El tipo describe un objeto que puede actuar como un iterador de acceso aleatorio constante para la secuencia controlada.

Ejemplo

#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

El tipo de un puntero constante a un elemento.

typedef const Ty *const_pointer;

Comentarios

El tipo describe un objeto que puede actuar como un puntero constante a elementos de la secuencia.

Ejemplo

#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

El tipo de una referencia constante a un elemento.

typedef const Ty& const_reference;

Comentarios

El tipo describe un objeto que puede actuar como referencia constante a un elemento de la secuencia controlada.

Ejemplo

#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

El tipo de un iterador invertido constante para la secuencia controlada.

typedef std::reverse_iterator<const_iterator> const_reverse_iterator;

Comentarios

El tipo describe un objeto que puede actuar como un iterador inverso constante para la secuencia controlada.

Ejemplo

#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

Devuelve un iterador constante al primer elemento de una matriz inversa.

const_reverse_iterator crbegin() const;

Valor devuelto

Iterador inverso constante de acceso aleatorio que dirige al primer elemento de una matriz inversa o al que fue el último elemento de la matriz sin invertir.

Comentarios

Con el valor devuelto de crbegin, el objeto de matriz no se puede modificar.

Ejemplo

#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

Devuelve un iterador constante que dirige a la ubicación siguiente al último elemento de una matriz invertida.

const_reverse_iterator crend() const noexcept;

Valor devuelto

Iterador constante de acceso aleatorio inverso que dirige a la ubicación siguiente al último elemento de una matriz invertida (la ubicación que había precedido al primer elemento de la matriz sin invertir).

Comentarios

crend se utiliza con una matriz invertida tal como se usa array::cend con una matriz.

Con el valor devuelto de crend (adecuadamente reducido), el objeto de matriz no se puede modificar.

Se puede utilizar crend para comprobar si un iterador inverso ha llegado al final de su matriz.

El valor devuelto por crend no se debe desreferenciar.

Ejemplo

#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

Obtiene la dirección del primer elemento.

Ty *data();

const Ty *data() const;

Comentarios

Las funciones miembro devuelven la dirección del primer elemento de la secuencia controlada.

Ejemplo

#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

El tipo de una distancia con signo entre dos elementos.

typedef std::ptrdiff_t difference_type;

Comentarios

El tipo de entero con signo describe un objeto que puede representar la diferencia entre las direcciones de dos elementos cualesquiera de la secuencia controlada. Es un sinónimo del tipo std::ptrdiff_t.

Ejemplo

#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

Comprueba si no hay ningún elemento presente.

constexpr bool empty() const;

Comentarios

La función miembro devuelve true solo si N == 0.

Ejemplo

#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 el final de la secuencia controlada.

reference end();

const_reference end() const;

Comentarios

Las funciones miembro devuelven un iterador de acceso aleatorio que apunta inmediatamente después del final de la secuencia.

Ejemplo

#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

Borra una matriz y copia los elementos especificados en la matriz vacía.

void fill(const Type& val);

Parámetros

val
Valor del elemento que se va a insertar en la matriz.

Comentarios

fill reemplaza cada elemento de la matriz por el valor especificado.

Ejemplo

#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

Obtiene acceso al primer elemento.

reference front();

constexpr const_reference front() const;

Comentarios

Las funciones miembro devuelven una referencia al primer elemento de la secuencia controlada, que no debe estar vacío.

Ejemplo

#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

El tipo de un iterador para la secuencia controlada.

typedef implementation-defined iterator;

Comentarios

El tipo describe un objeto que puede actuar como un iterador de acceso aleatorio de la secuencia controlada.

Ejemplo

#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

Cuenta el número de elementos.

constexpr size_type max_size() const;

Comentarios

La función miembro devuelve N.

Ejemplo

#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[]

Obtiene acceso a un elemento en una posición especificada.

reference operator[](size_type off);

constexpr const_reference operator[](size_type off) const;

Parámetros

off
Posición del elemento al que se accederá.

Comentarios

Las funciones miembro devuelven una referencia al elemento de la secuencia controlada en la posición off. Si esa posición no es válida, el comportamiento es indefinido.

También hay una función no miembro get disponible para obtener una referencia a un elemento de array.

Ejemplo

#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=

Reemplaza la secuencia controlada.

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

Parámetros

right
Contenedor que se va a copiar.

Comentarios

El operador miembro asigna cada elemento de right al elemento correspondiente de la secuencia controlada y luego devuelve *this. Se usa para reemplazar la secuencia controlada por una copia de la secuencia controlada de right.

Ejemplo

#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

El tipo de un puntero a un elemento.

typedef Ty *pointer;

Comentarios

El tipo describe un objeto que puede actuar como un puntero a elementos de la secuencia.

Ejemplo

#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 el principio de la secuencia controlada inversa.

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

Comentarios

Las funciones miembro devuelven un iterador inverso que apunta inmediatamente después del final de la secuencia controlada. Por tanto, designa el principio de la secuencia inversa.

Ejemplo

#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

El tipo de una referencia a un elemento.

typedef Ty& reference;

Comentarios

El tipo describe un objeto que puede actuar como referencia a un elemento de la secuencia controlada.

Ejemplo

#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 el final de la secuencia controlada inversa.

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

Comentarios

Las funciones miembro devuelven un iterador inverso que apunta al primer elemento de la secuencia (o más allá del final de una secuencia vacía). Por tanto, designa el final de la secuencia inversa.

Ejemplo

#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

El tipo de un iterador invertido para la secuencia controlada.

typedef std::reverse_iterator<iterator> reverse_iterator;

Comentarios

El tipo describe un objeto que puede actuar como un iterador inverso para la secuencia controlada.

Ejemplo

#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

Cuenta el número de elementos.

constexpr size_type size() const;

Comentarios

La función miembro devuelve N.

Ejemplo

#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

El tipo de una distancia sin signo entre dos elementos.

typedef std::size_t size_type;

Comentarios

El tipo de entero sin signo describe un objeto que puede representar la longitud de cualquier secuencia controlada. Es un sinónimo del tipo std::size_t.

Ejemplo

#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

Intercambia el contenido de esta matriz con otra matriz.

void swap(array& right);

Parámetros

right
Matriz con la que se va a intercambiar el contenido.

Comentarios

La función miembro intercambia las secuencias controladas entre *this y right. Realiza asignaciones de elementos y llamadas de constructores proporcionales a N.

También hay una función no miembro swap disponible para intercambiar dos array instancias.

Ejemplo

#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

El tipo de un elemento.

typedef Ty value_type;

Comentarios

El tipo es un sinónimo del parámetro de plantilla Ty.

Ejemplo

#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

Consulte también

<array>