class template
<tuple>
std::tuple_size unspecializedtemplate <class T> class tuple_size;generic cv-specializations
template <class T> class tuple_size<const T>;template <class T> class tuple_size<volatile T>;template <class T> class tuple_size<const volatile T>;tuple specialization
template <class... Types> struct tuple_size<tuple<Types...> >;
Tuple size traits
Class template designed to access the number of elements in a tuple (as aconstexpr
).
The class is itself undefined for the generic type T, but a specialization for tuple instantiations is defined in the <tuple>
header as:
1
2
template <class... Types>
struct tuple_size<tuple<Types...> > : integral_constant<size_t, sizeof...(Types)> {};
constexpr
value.
For const
and/or volatile
-qualified tuples and tuple-like objects, the class is specialized so that its value member is itself non cv-qualified (size_t for tuples).
constexpr
value of the unsigned integral type size_t.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// tuple_size
#include <iostream> // std::cout
#include <tuple> // std::tuple, std::tuple_size
int main ()
{
std::tuple<int,char,double> mytuple (10,'a',3.14);
std::cout << "mytuple has ";
std::cout << std::tuple_size<decltype(mytuple)>::value;
std::cout << " elements." << '\n';
return 0;
}
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4