STL中序列式容器的共性
代码如下:
/*
* vector_1.cpp
*
* Created on: 2013年8月6日
* Author: Administrator
*/ #include <iostream>
#include <deque>
#include <string>
using namespace std; template <typename T>
void print(T b , T e,char c = ' '){
while(b!= e){
cout<<*b++<<c;
} cout<<endl;
} int main(){
deque<string> ds; //push_back(element) .从后面增加一个元素
ds.push_back("liuyifei");//在末尾增加一个元素
ds.push_back("刘亦菲");
ds.push_back("liushishi");
ds.push_back("刘诗诗");
ds.push_back("zzt");
print(ds.begin(),ds.end(),','); //insert(pos,n,element).在pos这个位置上插入n个element
ds.insert(++++ds.begin(),2,"章泽天");
print(ds.begin(),ds.end(),','); //insert(pos,begin,end).在pos位置上插入begin~end之间的数据
string s[3] = {"allen","hjd","黄东东"};
ds.insert(----ds.end(),s,s+3);
print(ds.begin(),ds.end(),','); //pop_back().从末尾删除一个元素
ds.pop_back();ds.pop_back();
print(ds.begin(),ds.end(),','); //front().返回序列的第一个元素(返回的是引用)
//end().返回序列的最后一个元素
cout<<"front:"<<ds.front()<<",back:"<<ds.back()<<endl; //resize(n,element).把序列的大小设为n,,不够的元素用element来补充
ds.resize(12,"小东东");
print(ds.begin(),ds.end(),','); //assign(n,element)。将序列的内容设置成n个element
ds.assign(5,"hdd");
print(ds.begin(),ds.end()); ds.front() = "帅哥东";
ds.back() = "ddd";
print(ds.begin(),ds.end());
}
结果如下:
liuyifei,刘亦菲,liushishi,刘诗诗,zzt,
liuyifei,刘亦菲,章泽天,章泽天,liushishi,刘诗诗,zzt,
liuyifei,刘亦菲,章泽天,章泽天,liushishi,allen,hjd,黄东东,刘诗诗,zzt,
liuyifei,刘亦菲,章泽天,章泽天,liushishi,allen,hjd,黄东东,
front:liuyifei,back:黄东东
liuyifei,刘亦菲,章泽天,章泽天,liushishi,allen,hjd,黄东东,小东东,小东东,小东东,小东东,
liuyifei,刘亦菲,章泽天,章泽天,liushishi,
hdd hdd hdd hdd hdd
帅哥东 hdd hdd hdd ddd
STL中序列式容器的共性的更多相关文章
- STL之序列式容器list与forward_list
List (双向链表) 与 forwardlist (单向链表) 算是非常基础的数据结构了,这里只是简单介绍下其结构及应用. 以list为例: 其节点模板: template <class T& ...
- STL中关联式容器的特性
1.map 代码如下: /* * map_1.cpp * * Created on: 2013年8月6日 * Author: Administrator */ #include <iostrea ...
- STL源码剖析读书笔记--第四章--序列式容器
1.什么是序列式容器?什么是关联式容器? 书上给出的解释是,序列式容器中的元素是可序的(可理解为可以按序索引,不管这个索引是像数组一样的随机索引,还是像链表一样的顺序索引),但是元素值在索引顺序的方向 ...
- STL源码剖析之序列式容器
最近由于找工作需要,准备深入学习一下STL源码,我看的是侯捷所著的<STL源码剖析>.之所以看这本书主要是由于我过去曾经接触过一些台湾人,我一直觉得台湾人非常不错(这里不涉及任何政治,仅限 ...
- STL序列式容器学习总结
STL序列式容器学习总结 参考资料:<STL源码剖析> 参考网址: Vector: http://www.cnblogs.com/zhonghuasong/p/5975979.html L ...
- STL——序列式容器
一.容器概述与分类 1. STL容器即是将运用最广的一些数据结构实现出来.常用的数据结构有array, list, tree, stack, queue, hash table, set, map…… ...
- STL源码剖析——序列式容器#1 Vector
在学完了Allocator.Iterator和Traits编程之后,我们终于可以进入STL的容器内部一探究竟了.STL的容器分为序列式容器和关联式容器,何为序列式容器呢?就是容器内的元素是可序的,但未 ...
- STL源码剖析:序列式容器
前言 容器,置物之所也.就是存放数据的地方. array(数组).list(串行).tree(树).stack(堆栈).queue(队列).hash table(杂凑表).set(集合).map(映像 ...
- 数据结构-STL序列式容器总结
根据序列在容器中的排列特性,将常见数据结构分为:序列式容器和关联式容器. 常见序列式容器有 1.array(build-in)c++內建 2.vector 3.heap(以算法方式呈现) 4.prio ...
随机推荐
- Nyoj 43 24 Point game 【DFS】
24 Point game 时间限制:3000 ms | 内存限制:65535 KB 难度:5 描写叙述 There is a game which is called 24 Point game ...
- Multi-touch.
TP(Multi-touch). 1.Win7有6个版本,分别如下. Windows 7 Starter (初级版) 不支 ...
- css让div水平垂直居中
示例1: .div1{ width:200px; height:300px; border:1px solid #000; position: relative; } .div2{ width: 40 ...
- SplitButton( 分割按钮)
一. 加载方式//class 加载方式<a href="javascript:void(0)" id="edit" class="easyui- ...
- java对象Integer不能引用传递
java对象Integer不能引用传递 /** * The value of the <code>Integer</code>. * * @serial */ private ...
- CSS3动画(360度旋转、旋转放大、放大、移动)
Title div { width: 120px; height: 120px; line-height: 120px; margin: 20px; background-color: #5cb85c ...
- 【转】tkinter实现的文本编辑器
此代码是看完如下教学视频实现的,所以算是[转载]吧: 效果: 代码: # -*- encodin ...
- How to start the Virtualbox VMs under terminal
Since we have servral machine on my testbed(fedora), and if I need start some VMs on that, I have to ...
- Oracle数据库中的blob类型解析
Oracle的Blob字段比较特殊,他比long字段的性能要好很多,可以用来保存例如图片之类的二进制数据. 写入Blob字段和写入其它类型字段的方式非常不同,因为Blob自身有一个cursor,你必须 ...
- (二)HTML5 - Web SQL 本地数据库
简介 WEB SQL Database即本地的SQLite数据库,使用的方式和方法和SQLite基本相同 判断浏览器是否支持 if (!window.openDatabase) { alert('Da ...