标准模板库中的向量(vector)
//C++数据结构与算法(第4版) Adam Drozdek 著 徐丹 吴伟敏<<清华大学出版社>>
头文件:#include<vector>
向量是最简单的STL容器,其数据结构与数组类似,占据着一个连续的内存块。由于内存位置是连续的,所以向量中的元素可以随机访问,访问向量中任何一个元素的时间也是固定的。存储空间的管理是自动的,当要将一个元素插入到已满的向量中时,会为向量分配一个更大的内存块,将向量中的元素复制进新的内存块,然后释放旧的内存块。所以,向量是一个灵活的数组,是能够动态改变自身大小的数组。
vector() //创建空向量
vector(size_type n, const T& el = T()) //用类型T的n个el副本创建一个向量(如果没有提供el,则使用默认的构造函数T())
vector(iterator first, iterator last) //用迭代器first和last指示范围中的元素构造一个向量
vector(const vector<T>& v) //复制构造函数
void assign(iterator first,iterator last) //删除向量中的所有元素,然后将迭代器first和last指示范围中的元素插入该向量。
void assign(size_type n, const T& el = T()) //删除向量中的所有元素,然后将el的n个副本插入该向量中。
T& at(size_type n) //返回向量中位置为n的元素
const T& at(size_type n) const //返回向量中位置为n的元素
T& back() //返回向量的最后一个元素
T& front() //返回向量的第一个元素
const T& front() const //返回向量的第一个元素
const T& back() const //返回向量的最后一个元素
iterator begin() //返回一个迭代器,该迭代器引用向量的第一个元素
iterator end() //返回一个迭代器,该迭代器位于向量的最后一个元素之后
const_iterator begin() const //返回一个迭代器,该迭代器引用向量的第一个元素
const_iterator end() const //返回一个迭代器,该迭代器位于向量的最后一个元素之后
size_type capacity() const //返回可以存储在向量中的元素数目
void clear() //清除向量中的所有元素
bool empty() const //如果向量不包括元素,则返回true,否则返回false
iterator erase(iterator i) //删除由迭代器i引用的元素,返回一个迭代器,引用被删除元素之后的元素
iterator erase(iterator first, iterator last) //删除迭代器first和last指示范围中的元素,返回一个迭代器,引用被删除的最后一个元素之后的元素
iterator insert(ierator i, const T& el = T()) //在迭代器i引用的元素之前出入el,并返回引用新插入元素的迭代器
void insert(iterator i, size_type n, const T& el) //在迭代器i引用的元素之前插入el的n个副本
void insert(iterator i, iterator first, iterator last) //在迭代器i引用的元素之前插入迭代器first和迭代器last指示的范围中的元素
size_type max_size() const //返回向量最大元素数
T& operator[] //下标运算符
const T& operator[] const //下标运算符
void pop_back() //删除向量的最后一个元素
void push_back(const T& el) //在向量的末尾插入el
reverse_iterator rbegin() //返回引用向量中最后一个元素的迭代器
const_reverse_iterator rbegin() const //返回引用向量中最后一个元素的迭代器
reverse_iterator rend() //返回引用向量中第一个元素之前的迭代器
const_reverse_iterator rend() const //返回引用向量中第一个元素之前的迭代器
void reserve(size_type n) //如果向量的容量小于n,该函数就为向量预留保存n项的足够空间
void resize(size_type n, const T& el = T()) //使向量保存n个元素,方法是:通过el再添加n-size()个位置,或者丢弃向量末尾溢出的size()-n个位置
size_type size() const //返回向量中的元素数量
void swap(vector<T>& v) //与另一个向量v交换内容
在 vector 容器中间添加(或删除)元素将使所有指向插入(或删除)点后面的元素的迭代器失效。
最新文章
- 用muduo实现memcached协议的例子
- Sparse Filtering 学习笔记(三)目标函数的建立和求解
- js 当前日期及时间
- System.nanoTime()的使用
- POJ1191 棋盘分割(DP)
- 《Code Complete》ch.15 使用条件语句
- 用include来处理模板的问题
- 初遇ping++
- 基于bootstrap的轮播广告页,带图片和文字
- (Relax 数论1.8)POJ 1284 Primitive Roots(欧拉函数的应用: 以n为模的本原根的个数phi(n-1))
- BZOJ 3277: 串/ BZOJ 3473: 字符串 ( 后缀数组 + RMQ + 二分 )
- 简单的三方登录SDK示例,Android Activity之间数据的传递
- Linux php/php-fpm 安装,配置
- cuda8.0 /usr/bin/ld: cannot find -lGL
- python+selenium自动化软件测试(第7章):Page Object模式
- bzoj千题计划165:bzoj5127: 数据校验
- 【jQuery】(1)---初次接触Jquery
- go基础系列:结构struct
- 利尔达推出工控解决方式 串口转以太网模块LSD1ES-W5500_S2E0
- 【转】vi 写完文件保存时才发现是 readonly
热门文章
- winform Anchor和Dock属性
- 《Web安全攻防 渗透测试实战指南 》 学习笔记 (三)
- Java面向对象编程 -1.5
- 【Fine学习笔记】Jmeter笔记
- springboot 打包成jar
- 3000 - No Mycat Database selected
- [阿里移动推荐算法]比赛_快速入门_4_19_update_仅供参考,思维不要受局限
- git切换分支导致代码丢失找回(git reflog找回错误的重置)
- el-dialog 如何自定义大小样式
- async处理异步操作