Espacios de nombres
Variantes
Acciones

std::array::data

De cppreference.com
< cpp‎ | container‎ | array
 
 
 
 
T* data() noexcept;
(desde C++11)
(hasta C++17)
constexpr T* data() noexcept;
(desde C++17)
const T* data() const noexcept;
(desde C++11)
(hasta C++17)
constexpr const T* data() const noexcept;
(desde C++17)

Devuelve un puntero al array subyacente que sirve como almacenamiento para los elementos. El puntero es tal que el rango [data(); data() + size()) es siempre un rango válido, incluso si el contenedor está vacío (data() no es desreferenciable en ese caso).

Contenido

[editar] Parámetros

(Ninguno)

[editar] Valor de retorno

Un puntero al almacenamiento de elementos subyacente. Para contenedores que no están vacíos, el puntero devuelto se compara igual a la dirección del primer elemento.

[editar] Complejidad

Constante.

[editar] Notas

Si size() es 0, data() puede o no devolver un puntero nulo.

[editar] Ejemplo

#include <cstddef>
#include <iostream>
#include <array>
 
void func_puntero(const int* p, std::size_t size)
{
    std::cout << "datos = ";
    for (std::size_t i = 0; i < size; ++i)
        std::cout << p[i] << ' ';
    std::cout << '\n';
}
 
int main()
{
    std::array<int,4> contenedor { 1, 2, 3, 4 };
 
    // Preferir contenedor.data() a &contenedor[0]
    func_puntero(contenedor.data(), contenedor.size());
}

Salida:

datos = 1 2 3 4

[editar] Véase también

(C++11)
Accede al primer elemento.
(función miembro pública) [editar]
(C++11)
Accede al último elemento.
(función miembro pública) [editar]
(C++11)
Devuelve el número de elementos.
(función miembro pública) [editar]