Przestrzenie nazw
Warianty

std::tuple_size<std::pair>

Z cppreference.com
<tbody> </tbody> <tbody class="t-dcl-rev "> </tbody><tbody> </tbody>
Zdefiniowane w nagłówku <utility>
template< class T1, class T2 > struct tuple_size<std::pair<T1, T2>>;
(od C++11)


Częściowa specjalizacja std::tuple_size dla par, zapewniająca dostęp w czasie kompilacji do liczby elementów w parze, korzystając z krotkowej semantyki. Oczywiście, liczba elementów w parze zawsze wynosi 2.

Odziedziczone po std::integral_constant

Stałe składowe

value
[static]
the constant value 2
(statyczne stałe pole)

Metody

operator std::size_t
konwertuje obiekt do std::size_t, zwraca value
(publiczna metoda)

Typy składowe

Typ Definicja
value_type std::size_t
type std::integral_constant<std::size_t, value>

Przykład

#include <iostream>
#include <utility>
#include <tuple>

template<class T>
void test(T t)
{
    int a[std::tuple_size<T>::value]; // can be used at compile time
    std::cout << std::tuple_size<T>::value << '\n'; // or at run time
}

int main()
{
    test(std::make_tuple(1, 2, 3.14));
    test(std::make_pair(1, 3.14));
}

Wynik:

3
2

Zobacz także

uzyskuje rozmiar krotki tuple w czasie kompilacji
(specjalizacja szablonu klasy) [edit]
uzyskuje rozmiar kontenera array
(specjalizacja szablonu klasy) [edit]
uzyskuje typ elementu pary pair
(specjalizacja szablonu klasy) [edit]
Morty Proxy This is a proxified and sanitized view of the page, visit original site.