代码如下:

/*
* 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. (转)Maven实战(二)构建简单Maven项目

    上一节讲了maven的安装和配置,这一节我们来学习一下创建一个简单的Maven项目 1. 用Maven 命令创建一个简单的Maven项目 在cmd中运行如下命令: mvn archetype:gene ...

  2. POJ 1386 有向图欧拉通路

    题意:给你一些字符串,这些字符串可以首位相接(末位置如果和另一个字符串的首位置相同的话就可以相连) .然后问你是否可以全部连起来. 思路:就是取出每个字符串的首尾位置,然后求出出度和入度,根据有向欧拉 ...

  3. .NET2.0下的对象生成JSON数据

    前言:今天研究了下在.NET2.0环境下开发Ajax程序经常用到的一个数据类型JSON, 一.什么是JSON? 自己也写不了句子不是很专业,下面是百度百科的关于JSON的介绍: JSON(JavaSc ...

  4. Maven初识

    说说maven,我们每做一个项目,都要往lib目录扔很多jar包,spring的啊hibernate的啊apache的啊等等,这样就会导致很多包不知从哪个角落下载回来的,名称千奇百怪,版本也不明,项目 ...

  5. 让 asp.net mvc 支持 带有+ _ 等特殊字符的路由

    最近配置微信 业务域名 时,需要在服务器的根目录中上传一个文本文件,而这个文本文件需要放这样的目录中: 于在就在 服务器目录中创建了对应的文件夹,并将kuPv.txt上传,但是访问时,却怎么也访问不到 ...

  6. win7 重启 IIS.

    步骤 1,打开 "控制面板",并将右上角的"查看方式"设置为 "大/小图标". 2,选择 "管理工具": 3,打开 In ...

  7. AngularJs练习Demo19 Resource

    @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...

  8. hadoop mapreduce 端参数优化

    在MapReduce执行过程中,特别是Shuffle阶段,尽量使用内存缓冲区存储数据,减少磁盘溢写次数:同时在作业执行过程中增加并行度,都能够显著提高系统性能,这也是配置优化的一个重要依据. 下面分别 ...

  9. Android小试牛刀之遇到的问题

    1.运行出错 创建项目时没有使用Empty Activity,创建. 2.创建第一个工程 选择Empty Activity才会自动创建Hello Word代码块 3.appcompat_v7的说明 在 ...

  10. 剖析c++(二) 内置类型的内存形式

    分布形式以及转换时候的截断(待编辑)