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ón std::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) |