template 使你无需写出型别,就可以生成一个pair对象:
namespace std{
template <class T1,class T2>
}
当我们有必要对一个接受pair参数的函数传递两个值时,make_pair尤其显得方便,
void f(std::pair<int,const char *>);
f(std::make_pair(42,"hactcm"));
下面是pair类的结构:
namespace std{
namespace std{
template <class T1,class T2>
pair<T1,T2> make_pair(const T1& x,const T2 &y){
return pair<T1,T2>(x,y);}
}
当我们有必要对一个接受pair参数的函数传递两个值时,make_pair尤其显得方便,
void f(std::pair<int,const char *>);
f(std::make_pair(42,"hactcm"));
下面是pair类的结构:
namespace std{
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 & a,const T2 & b):first(a),second(b){}
};