◐ Shell
clean mode source ↗

std::get(std::array) - cppreference.com

De cppreference.com

</tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody>

Definido en el archivo de encabezado <array>

(1)

template< std::size_t I, class T, std::size_t N > T& get( std::array<T,N>& a ) noexcept;

(desde C++11)
(hasta C++14)

template< std::size_t I, class T, std::size_t N > constexpr T& get( std::array<T,N>& a ) noexcept;

(desde C++14)
(2)

template< std::size_t I, class T, std::size_t N > T&& get( std::array<T,N>&& a ) noexcept;

(desde C++11)
(hasta C++14)

template< std::size_t I, class T, std::size_t N > constexpr T&& get( std::array<T,N>&& a ) noexcept;

(desde C++14)
(3)

template< std::size_t I, class T, std::size_t N > const T& get( const std::array<T,N>& a ) noexcept;

(desde C++11)
(hasta C++14)

template< std::size_t I, class T, std::size_t N > constexpr const T& get( const std::array<T,N>& a ) noexcept;

(desde C++14)
(4)

template< std::size_t I, class T, std::size_t N > const T&& get( const std::array<T,N>&& a ) noexcept;

(desde C++11)
(hasta C++14)

template< std::size_t I, class T, std::size_t N > constexpr const T&& get( const std::array<T,N>&& a ) noexcept;

(desde C++14)

Extrae el I-ésimo elemento del array.

I debe ser un valor entero en el rango [0, N). Esto se aplica en tiempo de compilación en lugar de at() u operator[].

Parámetros

a - El array de cuyo contenido hay que extraer.

Valor de retorno

Una referencia al I-ésimo elemento de a.

Complejidad

Constante.

Ejemplo

#include <iostream>
#include <array>

int main()
{
    std::array<int, 3> arr;
    
    // establecer valores:
    std::get<0>(arr) = 1;
    std::get<1>(arr) = 2;
    std::get<2>(arr) = 3;
    
    // obtener valores:
    std::cout << "(" << std::get<0>(arr) << ", " << std::get<1>(arr)
              << ", " << std::get<2>(arr) << ")\n";
}

Salida:

Informes de defectos

Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estándares de C++ publicados anteriormente.

ID Aplicado a Comportamiento según lo publicado Comportamiento correcto
LWG 2485 C++11 No existían sobrecargas para const array&& Se agregaron las sobrecargas

Véase también