Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The latest version of this topic can be found at Visual Studio 2017 Documentation.
Wraps the size of an array.
Syntax
template <class Tuple>
struct tuple_size;
// struct to determine number of elements in array
template <class T, size_t Size>
struct tuple_size<array<T, Size>>
: integral_constant<size_t, Size>;
// size of const tuple
template <class Tuple>
struct tuple_size<const Tuple>;
// size of volatile tuple
template <class Tuple>
struct tuple_size<volatile Tuple>;
// size of const volatile tuple
template <class Tuple>
struct tuple_size<const volatile Tuple>;
Template Parameters
T
The type of an element.
Size
The size of the array.
Remarks
This template is a specialization of the template class tuple_size Class. It has a member value that is an integral constant expression whose value is N, which is the size of the array.
Example
#include <array>
#include <iostream>
using namespace std;
typedef array<int, 4> MyArray;
int main()
{
MyArray c0 { 0, 1, 2, 3 };
// display contents " 0 1 2 3"
for (const auto& e : c0)
{
cout << e;
}
cout << endl;
// display size " 4"
cout << " " << tuple_size<MyArray>::value << endl;
}
/*
Output:
0123
4
*/
Requirements
Header: <array>
Namespace: std