【C++】【STL】STL中部分数据结构的通俗化解释
2015-11-26 18:13
447 查看
假设T为“某种数据类型”。
其中书名号应为英文字符状态下的尖括号,然而没办法打。
1.vetcor
vector的定义方式是:vector《T》 v
vector可以说是“无限长数组”,会随着数据的增加而动态分配空间。
2.set
set的定义方式是:set《T》 s
set可以说是“增序数组”,就是说set里的元素已经从小到大排好序。
set独特功能:
1.set_union(x1.begin(), x1.end(), x2.begin(), x2.begin(), inserter(x, x.begin()))
2.set_intersection(x1.begin(), x1.end(), x2.begin(), x2.begin(), inserter(x, x.begin()))
3.s.insert()
3.map
map的定义方式是:map《T1,T2》 m
map可以说是“无类型限制的数组”,众所周知,数组是某种数据与“0,1,2……”形成映射,而map可以把“0,1,2……”换成其他的数据类型的数据。
更棒的是,map定义了“[ ]”运算符,也就是说可以这样:
map[t1] = t2;
其中t1,t2分别为两种数据类型的实例。
栈、队列、优先队列就不赘述了。
其中书名号应为英文字符状态下的尖括号,然而没办法打。
1.vetcor
vector的定义方式是:vector《T》 v
vector可以说是“无限长数组”,会随着数据的增加而动态分配空间。
2.set
set的定义方式是:set《T》 s
set可以说是“增序数组”,就是说set里的元素已经从小到大排好序。
set独特功能:
1.set_union(x1.begin(), x1.end(), x2.begin(), x2.begin(), inserter(x, x.begin()))
2.set_intersection(x1.begin(), x1.end(), x2.begin(), x2.begin(), inserter(x, x.begin()))
3.s.insert()
3.map
map的定义方式是:map《T1,T2》 m
map可以说是“无类型限制的数组”,众所周知,数组是某种数据与“0,1,2……”形成映射,而map可以把“0,1,2……”换成其他的数据类型的数据。
更棒的是,map定义了“[ ]”运算符,也就是说可以这样:
map[t1] = t2;
其中t1,t2分别为两种数据类型的实例。
栈、队列、优先队列就不赘述了。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- 关于指针的一些事情
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- C++联合体转换成C#结构的实现方法
- C++编写简单的打靶游戏
- C++ 自定义控件的移植问题
- C++变位词问题分析
- C/C++数据对齐详细解析
- C++基于栈实现铁轨问题
- C++中引用的使用总结
- 使用Lua来扩展C++程序的方法
- C++中调用Lua函数实例
- Lua和C++的通信流程代码实例
- C与C++之间相互调用实例方法讲解
- 解析C++中派生的概念以及派生类成员的访问属性
- C++ Custom Control控件向父窗体发送对应的消息