std::tuple_size(std::array)
De cppreference.com
Definido en el archivo de encabezado <array> | ||
template<class T, std::size_t N > struct tuple_size<std::array<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.
Contenido |
Heredado de std::integral_constant
Constantes miembro
value [estático] | 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> |
[editar]Ejemplo
Ejecuta este código
#include <iostream>#include <array> template<class T>void prueba(T t){int a[std::tuple_size<T>::value];// puede usarse en tiempo de compilaciónstd::cout<<std::size(a)<<'\n';} int main(){std::array<float, 3> arr; prueba(arr);}
Salida:
3
[editar]Véase también
Vínculo estructurado(C++17) | Vincula los nombres especificados a subobjetos o elementos de una tupla del inicializador. |
Obtiene el tamaño de una tupla en tiempo de compilación. (especialización de plantilla de clase) |