vector_01
尾部 ==> 添加/删除 快
头部/中间 ==> 添加/删除 慢
A、尾部 添加/移除:
void vector::push_back();
void vector::pop_back();
B、随机存取
B.1、[?] ==> 越界时,程序 崩溃
B.2、at(?) ==> 越界时,抛异常 out_of_range
C、数据存取
C.1、T vector::front(); // 第一个 (既可用于返回,也可以用于设置)
C.2、T vector::back(); // 最后一个(既可用于返回,也可以用于设置)
1、构造函数
1.1、默认构造函数 ==> 无参构造函数
1.2、必定需要 复制构造函数 :vector<T> vecT(const vector& );
1.3、vector<T> vecT(iteratorBegin, iteratorEnd); // 迭代器区间[iteratorBegin, iteratorEnd)拷贝给vecT
注意: 这里可以传数组指针,数组指针在特定情况下可以当做迭代器使用
1.4、vector<T> vecT(n, elemValue); // n个elemValue复制给vecT
2、赋值
2.1、重载"="操作符
vector& = const vector& vec;
2.2、void vector<T>::assign(beg, end); // [beg, end)区间拷贝给
2.3、void vector<T>::assign(n, elemValue);// n个elemValue拷贝给
3、迭代器操作
3.1、const_iterator vector<T>::begin(); // 第1个
3.2、const_iterator vector<T>::end(); // 最后1个
3.3、const_reverse_iterator vector<T>::rbegin(); // 倒数第1个
3.4、const_reverse_iterator vector<T>::rend(); // 倒数最后1个
4、插入
注意: 拷贝插入(ZC: 也就是说 插入容器的元素是 类实例的话,类必须提供复制构造函数)
iterator vector::insert(const_iterator, elemValue); // 返回新元素的位置,拷贝插入
void vector::insert(const_iterator, size_type n, elemValue);
void vector::insert(const_iterator, iterator beg, iterator end); // [beg, end)区间
5、删除
void vector::clear();
iterator vector::erase(const_iterator beg, const_iterator end); // [beg, end)区间,返回下一个元素的位置
iterator vector::erase(const_iterator pos); // 返回下一个元素的位置
6、交换
void vector<T>::swap(vector<T>&);
7、大小
size_type vector<T>::size();
bool vector<T>::empty();
void vector<T>::resize(size_type);
void vector<T>::resize(size_type, elemValue);
8、查找
vector_01的更多相关文章
随机推荐
- javascript console自动点击页面元素
原文地址https://jingyan.baidu.com/article/0a52e3f41c0b0abf63ed726d.html 这里拿百度音乐VIP兑换页面来做演示. 首先打开百度音乐VIP兑 ...
- EF5.0区别于EF4.0的增删改写法
// 实现对数据库的添加功能,添加实现EF框架的引用 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T& ...
- BCB ERROR:[Linker Error] 'XXX.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
今天C++builder 导入 gts .lib (gts.dll)库文件 编译报错: [Linker Error] 'D:\...\V4.05.007.1000-20161028\GTS.LIB' ...
- HashMap(JDK1.9)详解
一.HashMap的概念. 1.HashMap类的继承实现关系如下:因此HashMap的功能有:可序列化.可克隆等功能. 2.HashMap的数据结构:数组+链表+红黑树. 3.键值对的存储方案:第一 ...
- Object-C-复制
copy 减少对象上下文依赖 copy 创建一个新对象,copy得到的副本对象与原来内容相同,新的对象retain为1,与旧有对象的引用计数无关,旧有对象没有变化 使用 copy 创建出来的对象是不可 ...
- windows系统bat方式启动tomcat出现java.lang.OutOfmemoryError:PermGen Space 错误
1.问题情景: 在部署项目时,将两个应用部署到同一个tomcat下,通过startup.bat启动服务时,控制台出现出现java.lang.OutOfmemoryError:PermGen Space ...
- Splay简介
Splay树,又叫伸展树,可以实现快速分裂合并一个序列,几乎可以完成平衡树的所有操作.其中最重要的操作是将指定节点伸展到指定位置, 目录 节点定义 旋转操作 伸展操作 插入操作 删除操作 lower_ ...
- VC++ 利用CreateFile、ReadFile和WriteFile实现CopyFile
1. CreateFile:这是一个多功能的函数,可打开或创建以下对象,并返回可访问的句柄:控制台,通信资源,目录(只读打开),磁盘驱动器,文件,邮槽,管道. 参照:http://www.cppblo ...
- FTP-IIS Web
快速搭建一个本地的FTP服务器 如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试. 第一步:配置IIS Web服务器 1.1 控制面板中找到“程序”并打开 1 ...
- IntelliJ IDEA 连接数据库 详细过程
IntelliJ IDEA集成了众多插件,方便开发者使用,使用其自带的Database模块就可以很方便的配置.连接到数据库,本次操作以MySQL为例,其中testjdbc数据库已经提前建好,里面有两张 ...