Namespaces
Variants

std:: tuple_size <std::array>

From cppreference.net
Definido en el encabezado <array>
template < class T, std:: size_t N >

struct tuple_size < std:: array < T, N > > :
std:: integral_constant < std:: size_t , N >

{ } ;
(desde C++11)

Proporciona acceso al número de elementos en un std::array como una expresión constante en tiempo de compilación.

Contenidos

Plantilla de variable auxiliar

template < class T >
constexpr std:: size_t tuple_size_v = tuple_size < T > :: value ;
(desde C++17)

Heredado de std:: integral_constant

Constantes miembro

value
[static]
N , el número de elementos en el array
(constante miembro pública estática)

Funciones miembro

operator std::size_t
convierte el objeto a std:: size_t , devuelve value
(función miembro pública)
operator()
(C++14)
devuelve value
(función miembro pública)

Tipos miembro

Tipo Definición
value_type std:: size_t
type std:: integral_constant < std:: size_t , value >

Ejemplo

#include <array>
int main()
{
    auto arr = std::to_array("ABBA");
    static_assert(std::tuple_size<decltype(arr)>{} == 5);
}

Véase también

Structured binding (C++17) vincula los nombres especificados a subobjetos o elementos de tupla del inicializador
(C++11)
obtiene el número de elementos de un tipo similar a tupla
(plantilla de clase)
obtiene el tamaño de

un tuple
(especialización de plantilla de clase)

obtiene el tamaño de un pair
(especialización de plantilla de clase)
obtiene el tamaño de un std::ranges::subrange
(especialización de plantilla de clase)