Aracılığıyla paylaş


tuple_size sınıfı

öğesinin içerdiği öğe tuple sayısını raporlar.

Sözdizimi

// TEMPLATE STRUCT tuple_size
template <class Tuple>
   struct tuple_size;

// number of elements in array
template <class Elem, size_t Size>
   struct tuple_size<array<Elem, Size>>
      : integral_constant<size_t, Size>;

// size of pair
template <class T1, class T2>
   struct tuple_size<pair<T1, T2>>
      : integral_constant<size_t, 2>

// size of tuple
template <class... Types>
   struct tuple_size<tuple<Types...>>
      : integral_constant<size_t, sizeof...(Types)>;

// 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 <class T> inline constexpr size_t tuple_size_v = tuple_size<T>::value;

Parametreler

Tuple
Tanımlama grubunun türü.

Elem
Dizi öğelerinin türü.

Size
Dizinin boyutu.

T1
Çiftin ilk üyesinin türü.

T2
Çiftin ikinci üyesinin türü.

Types
Tanımlama grubu öğelerinin türleri.

Açıklamalar

Sınıf şablonu, değeri tanımlama grubu türünün Tuplekapsamı olan bir tamsayı sabit ifadesi olan bir üyeye value sahiptir.

Diziler için şablon özelleştirmesi, değeri Sizedizinin boyutu olan bir tamsayı sabit ifadesi olan bir üyeye value sahiptir.

Çift için şablon özelleştirmesi, değeri 2 olan bir tamsayı sabit ifadesi olan bir üyeye value sahiptir.

Örnek

#include <tuple>
#include <iostream>

using namespace std;

typedef tuple<int, double, int, double> MyTuple;
int main()
{
    MyTuple c0(0, 1.5, 2, 3.7);

    // display contents "0 1 2 3"
    cout << get<0>(c0);
    cout << " " << get<1>(c0);
    cout << " " << get<2>(c0);
    cout << " " << get<3>(c0) << endl;

    // display size "4"
    cout << " " << tuple_size<MyTuple>::value << endl;
}
0 1.5 2 3.7
4

Gereksinimler

Üstbilgi: <tuple>

Üst bilgi: <array> (dizi özelleştirmesi için)

Üst bilgi: <utility> (çift özelleştirmesi için)

Ad alanı: std