代码如下:

/*
* 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中序列式容器的共性的更多相关文章

  1. STL之序列式容器list与forward_list

    List (双向链表) 与 forwardlist (单向链表) 算是非常基础的数据结构了,这里只是简单介绍下其结构及应用. 以list为例: 其节点模板: template <class T& ...

  2. STL中关联式容器的特性

    1.map 代码如下: /* * map_1.cpp * * Created on: 2013年8月6日 * Author: Administrator */ #include <iostrea ...

  3. STL源码剖析读书笔记--第四章--序列式容器

    1.什么是序列式容器?什么是关联式容器? 书上给出的解释是,序列式容器中的元素是可序的(可理解为可以按序索引,不管这个索引是像数组一样的随机索引,还是像链表一样的顺序索引),但是元素值在索引顺序的方向 ...

  4. STL源码剖析之序列式容器

    最近由于找工作需要,准备深入学习一下STL源码,我看的是侯捷所著的<STL源码剖析>.之所以看这本书主要是由于我过去曾经接触过一些台湾人,我一直觉得台湾人非常不错(这里不涉及任何政治,仅限 ...

  5. STL序列式容器学习总结

    STL序列式容器学习总结 参考资料:<STL源码剖析> 参考网址: Vector: http://www.cnblogs.com/zhonghuasong/p/5975979.html L ...

  6. STL——序列式容器

    一.容器概述与分类 1. STL容器即是将运用最广的一些数据结构实现出来.常用的数据结构有array, list, tree, stack, queue, hash table, set, map…… ...

  7. STL源码剖析——序列式容器#1 Vector

    在学完了Allocator.Iterator和Traits编程之后,我们终于可以进入STL的容器内部一探究竟了.STL的容器分为序列式容器和关联式容器,何为序列式容器呢?就是容器内的元素是可序的,但未 ...

  8. STL源码剖析:序列式容器

    前言 容器,置物之所也.就是存放数据的地方. array(数组).list(串行).tree(树).stack(堆栈).queue(队列).hash table(杂凑表).set(集合).map(映像 ...

  9. 数据结构-STL序列式容器总结

    根据序列在容器中的排列特性,将常见数据结构分为:序列式容器和关联式容器. 常见序列式容器有 1.array(build-in)c++內建 2.vector 3.heap(以算法方式呈现) 4.prio ...

随机推荐

  1. java.lang.String小测试

    还记得java.lang.String么,如果现在给你一个小程序,你能说出它的结果么 public static String ab(String a){ return a + "b&quo ...

  2. bui上手体验

    在最近的项目中,接触到了bui这个后台管理框架 主页地址:http://builive.com/ 主页上也有一个后台管理的Demo:http://builive.com/apps/default/ma ...

  3. jQuery -&gt; 获取兄弟元�

    获取指定元素的兄弟元素时,能够使用adjacent sibling combinator (+),当中+的两側内容都是selector expression. 假设要获取下例中全部的 h1的直接兄弟元 ...

  4. Tips:javascript 图片放大和取得尺寸

    1)获取图片尺寸 <img src="http://img.my.csdn.net/uploads/201309/03/1378223257_7957.jpg" alt=&q ...

  5. android requestDisallowInterceptTouchEvent用途

    ViewPager来实现左右滑动切换tab.假设tab的某一项中嵌入了水平可滑动的View就会让你有些不爽,比方想滑动tab项中的可水平滑动的控件,却导致tab切换. 由于Android事件机制是从父 ...

  6. C#。5 结构体

    结构体:相当于是我们自己定义的一种复杂的类型. 常见简单类型:int...  double float bool char string 常见复杂类型:DateTime  数组类型 生活中大部份的对象 ...

  7. javascript获取标签样式(获取背景为例)

    function getStyle(el){ if(window.getComputedStyle){ return window.getComputedStyle(el,null); } retur ...

  8. Segment对象

    Segment对象是一个有起点和终点的“线“,也就是说Segement只有两个点,至于两点之间的线是直的,还是曲的,需要其余的参数定义. 所以Segment是由起点,终点和参数三个方面决定的.Segm ...

  9. js函数知识点

    1.即使写成functon a()也是可以调用外面定义的变量的,写(a,b),我估计是为了降低耦合性 2.即使写成function a()也是可以用arguments[a]来默认写了(a,b) 3.在 ...

  10. C++程序设计教程学习(1)-第一部分 编程基础

    第一章 概述 C++到底难不难学?没有学不会的事情 1.1 程序设计语言 语言 编程语言 人和计算机交流的工具,群体扩大,人人间交流过程描述与信息表达的工具 机器语言,汇编语言,高级语言 1.2 C+ ...