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 ...
随机推荐
- Windows下oracle打补丁步骤
1.Oracle官网下载对应的补丁文件(需要oracle支持账号才能下载) 2.设置ORACLE_HOME set oracle_home=F:\oracle\product\11.2.0\dbhom ...
- Python模拟登录实战(二)
目标:1.模拟登录豆瓣,2.自动更改签名和发表说说. 代码如下: #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'ziv·chan ...
- Android在跳转市场进行评分问题总结
原本以为应用评分是个很小的功能,但是一实现才发现真不是个小事.网上搜索资料没有找到答案,在很多开发群里面询问了很多人也没有解决问题,最后分析log,反编译看源码才终于有了些眉目,好吧,上代码: 1 t ...
- VS2008编程软件过期的问题,过期弹出须要升级窗体的解决的方法
找到安装文件,再点autorun.exe安装文件,然后反复安装过程就会弹出须要填写系列号的地方,天上以下第一个系列号就可以. Visual Studio 2008 Professional Editi ...
- openstack单元測试用组件一览
声明: 本博客欢迎转发,但请保留原作者信息! 博客地址:http://blog.csdn.net/halcyonbaby 内容系本人学习.研究和总结,如有雷同,实属荣幸! 组件一览 hacking 一 ...
- paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt
paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http:// ...
- git开源项目协作
开源项目协作 fork开源项目,即打开开源项目的github,然后点击fork按钮 pull request
- 读书笔记_Effective_C++_条款二十二:将成员变量声明为private
1.格式统一 在调用的时候,不会去想有没有(),一律是有get(),或者set()之类的. 2.封装 能直接访问得越少,表明封装性越高, 封装性越高,我们的顾虑就少了, 例如:我们a.data*0.9 ...
- Floyed算法 最短路径
#include<iostream>#include<cstdio>int v,e,n; //v是顶点数,e是条数int v1[101][101],path[101][101] ...
- POJ3111 K Best(另类背包+二分+变态精度)
POJ3111 K Best,看讨论区说数据有点变态,精度要求较高,我就直接把循环写成了100次,6100ms过,(试了一下30,40都会wa,50是4000ms) 第一次在POJ上看到下面这种东西还 ...