STL总结
来源:互联网 发布:oracle java认证 编辑:程序博客网 时间:2024/05/14 19:57
模板类 pair 的一个成员模板函数
template <class U1,class U2>
pair(const pair<U1,U2>&x):first(x.first),second(x.second)
如果两个变量都不是常量类型,可以使用make_pair(x,y),来产生一个pair的对象。
对照上面的构造函数来看,其中的x是赋值给x.first,y是赋值给x.second。
x.first是U1类型,x.second是U2类型。x.first和x.second是pair的两个成员对象。
pair模板类的构造函数:
template<class T1,classT2>struct pair
{
typedef T1 first_type;
typedef T2 second_type;
pair():first(T1()),second(T2()){}
pair(const T1&V1,const T2&V2):first(V1),sencond(V2){}
template<class U1,class U2>pair(const pair<U1,U2>):first(x.first),second(x.second){}
T1 first;
T2 second;
};
第一个(默认)构造函数将first初始化为T(),second初始化为U()。
第二个构造函数将first初始化为x,second初始化为y。第三个(模板)
构造函数将first初始化为pr.first,second初始化为pr.second。T和U只需各自提供一个默认构造函数,一个接受单参数的构造函数,以及一个析构函数
make_pair的作用与问题:可以在必要时产生一个pair对象。但不是每次都成功,因为模板函数在检测模板参数时将忽略点所有的const属性(至少他们可以这样做,某些编译器就是这样处理的。)也就是说我们不能依赖make_pair产生一个含有一个和多个常量成员的对象的pair对象。而这些map和multimap有时需要的。
- 【STL】STL 一般总结
- STL总结
- STL 总结
- STL 总结
- stl总结
- stl总结
- STL总结
- STL 总结
- 总结--STL
- STL总结
- STL 总结
- STL 总结
- STL总结
- STL总结
- Stl总结
- STL总结
- stl 总结
- STL总结
- 第二课:安装PHP
- [DotLucene]优化索引库
- 第三课:用什么工具编写PHP程序
- 第四课:第一个PHP程序
- 矿泉水网络又一天:思考网络媒体的自由度
- STL总结
- linux的maven+turbine+turque java项目移植到windows eclipse的过程记录
- CodeSmith 4.0如何支持中文
- 利用SAH实现kD树快速分割模型实践
- 计算机病毒史
- 贪婪是魔鬼
- 今年最流行的一句话
- 在CSDN上安个家
- 在oracle中通过connect by prior来实现递归查询!