TR1 TupleИнтерфейс задан для обеспечения равномерного доступа к<std::pair>, как если бы это был 2-элементный кортеж.
tuple_size<std::pair<T1, T2> >::value
Тип: Интегральная постоянная MPL
Значение: Возвращает 2, количество элементов в паре.
tuple_element<0, std::pair<T1, T2> >::type
Тип:<T1>
Ценность: Возвращает тип первого элемента пары
tuple_element<1, std::pair<T1, T2> >::type
Тип:<T2>
Стоимость: Возвращает тип второго элемента пары
template<int I, typename T1, typename T2>
P& get(std::pair<T1, T2>& pr);
template<int I, typename T1, typename T2>
const P& get(const std::pair<T1, T2>& pr);
Тип: Если<I
==0><P><T1>, то если<I==
1><P><T2>, то программа плохо сформирована.
<pr.first>, если<I
==0>иное<pr.second>.