关于__PAIR__
This class couples together a pair of values, which may be of different types (T1 and T2). The individual values can be accessed through the public members first and second. The class is defined as: template <class T1, class T2> struct pair { typedef T1 first_type; typedef T2 second_type; T1 first; T2 second; pair() : first(T1()), second(T2()) {} pair(const T1& x, const T2& y) : first(x), second(y) {} template <class U, class V> pair (const pair<U,V> &p) : first(p.first), second(p.second) { } }
代码多点,应该还是能够读懂的