vector和list的一些基本用法
2015-09-10 16:33
162 查看
1.vector和list有几个公共的方法,下面三个是常见的对于vector和list都适用的三个函数:
-Int size() const: 返回容器内的元素个数。
-Void clear():删除容器内所有的元素。
-Bool empty():如果容器没有元素,返回true,否则返回false.
2.vector和list都适合在常量的时间内在表的末尾添加或者删除。Vector和list两者都支持在常量的时间内访问前端的项。
-void push_back(const object & x):在表的末尾添加x.
-void pop_back():删除表的末尾的对象。
-const Object&back()const:返回表的末尾的对象。
-const Object&front()const:返回表的前端的对象。
3.因为双向链表允许在表的前端进行高效的改变,而vector不支持,下面的方法仅对list有效:
-void push_front(const Object&x):在list的前端加上x.
-void pop_front()在list的前端删除x.
4.下面的这些方法,仅对vector有效:
-Object &operator[] (int idx):返回vector中的idx索引位置的对象,不包含边界检测。
-Object&at(int idx):返回vector中idx索引位置的对象,包含边界检测。
-int capacity()const:返回vector的内部容量。
-void reserve(int new Capacity):设定vector的新容量。
5.迭代器iterator
(1)或者迭代器
Iterator begin():返回指向容器的第一项的第一个迭代器。
Iterator end():返回指向容器的终止标志(容器中最后一项的后面的位置)的一个适当的迭代器。
定义迭代器可以这样定义:vector<int>vec;
(2)需要迭代器的容器操作
下面是迭代器的三个流行的方法:
-iterator insert(iterator pos,const Object&x):添加x到表中迭代器pos所指向的位置之前的位置。这对list是常量时间操作,但是对vector则不是。
-iterator erase(iterator pos):删除迭代器所给出的位置的对象。这对list来说常量时间操作,但是对于vector则不是。
-iterator erase(iterator start,iterator end):删除所有从位置start到end(但是不包括end)的所有元素。
-Int size() const: 返回容器内的元素个数。
-Void clear():删除容器内所有的元素。
-Bool empty():如果容器没有元素,返回true,否则返回false.
2.vector和list都适合在常量的时间内在表的末尾添加或者删除。Vector和list两者都支持在常量的时间内访问前端的项。
-void push_back(const object & x):在表的末尾添加x.
-void pop_back():删除表的末尾的对象。
-const Object&back()const:返回表的末尾的对象。
-const Object&front()const:返回表的前端的对象。
3.因为双向链表允许在表的前端进行高效的改变,而vector不支持,下面的方法仅对list有效:
-void push_front(const Object&x):在list的前端加上x.
-void pop_front()在list的前端删除x.
4.下面的这些方法,仅对vector有效:
-Object &operator[] (int idx):返回vector中的idx索引位置的对象,不包含边界检测。
-Object&at(int idx):返回vector中idx索引位置的对象,包含边界检测。
-int capacity()const:返回vector的内部容量。
-void reserve(int new Capacity):设定vector的新容量。
5.迭代器iterator
(1)或者迭代器
Iterator begin():返回指向容器的第一项的第一个迭代器。
Iterator end():返回指向容器的终止标志(容器中最后一项的后面的位置)的一个适当的迭代器。
定义迭代器可以这样定义:vector<int>vec;
(2)需要迭代器的容器操作
下面是迭代器的三个流行的方法:
-iterator insert(iterator pos,const Object&x):添加x到表中迭代器pos所指向的位置之前的位置。这对list是常量时间操作,但是对vector则不是。
-iterator erase(iterator pos):删除迭代器所给出的位置的对象。这对list来说常量时间操作,但是对于vector则不是。
-iterator erase(iterator start,iterator end):删除所有从位置start到end(但是不包括end)的所有元素。
相关文章推荐
- 将微信获取的部门JSON字符串转换成EASY UI Tree能够绑定的JSON(JSONPath的使用)
- mysql的innodb中事务日志ib_logfile
- C++的学习心得
- iCloud之获取记录
- SQL子查询
- SQL时间查询和子查询
- SQL 登陆
- Java synchronized 关于…
- java 线程synchronized 线程同步
- SQL函数(二)
- SQL函数(-)
- SQL 多表联合查询
- google 手机号码校验库libphonenumber
- SQL 排序
- Orcle SQL基础命令语句
- select 查询语句的小尾巴~~~…
- SQL 操作符
- 适配器设计模式(Adapter)
- IQKeyboardManager
- 连接AdapterView视图和数据源的桥梁:Adapter适配器(1)