码迷,mamicode.com
首页 > 编程语言 > 详细

C++学习:vector用法

时间:2015-03-04 14:42:46      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:c++   vector   向量   数组   迭代器   

功能

函数原型

说明

构造函数

vector();

创建一个空vector

vector(int nSize);

创建一个vector,元素个数为nSize

vector(int nSize,const t& t);

创建一个vector,元素个数为nSize,且值均为t

vector(const vector&);

复制构造函数

vector(begin,end);

复制[begin,end)区间内另一个数组的元素到vector中

属性

bool empty() const;

判断向量是否为空,若为空,则向量中无元素

int size() const;

返回向量中元素的个数

int capacity() const;

返回当前向量所能容纳的最大元素值

int max_size() const;

返回最大可允许的vector元素数量值

访问元素

[]

 

reference at(int pos);

返回pos位置元素的引用

reference front();

返回首元素的引用

reference back();

返回尾元素的引用

插入

void push_back(const T& x);

在vector尾部增加一个元素X

iterator insert(iterator it,const T& x);

迭代器指向的元素前插入一个元素x

iterator insert(iterator it,int n,const T& x);

迭代器指向的元素前插入n个相同的元素x

iterator insert(iterator it,const_iterator first,const_iterator last);

迭代器指向的元素前插入另一个相同类型vector的[first,last)间的数据

删除

iterator erase(iterator it);

删除向量中迭代器指向的元素

iterator erase(iterator first,iterator last);

删除向量中[first,last)间的元素

void pop_back();

删除向量中最后一个元素

void clear();

清空向量中所有元素

迭代器

iterator begin();

返回向量头指针,指向第一个元素

iterator end();

返回向量尾指针,指向向量最后一个元素的下一个位置

reverse_iterator rbegin();

反向迭代器,指向最后一个元素

reverse_iterator rend();

反向迭代器,指向第一个元素之前的位置

交换

void swap(vector&);

交换两个同类型向量的数据

 赋值

void assign(int n,const T& x);

设置向量中第n个元素的值为x

void assign(const_iterator first,const_iterator last);

向量中[first,last)中元素设置成当前向量元素

算法

reverse(vec.begin(),vec.end());

将元素翻转

sort(vec.begin(),vec.end());

默认是按升序排列,即从小到大。可以通过重写排序比较函数按照降序比较:定义排序比较函数:

bool Comp(const int &a,const int &b) {

    return a>b;

}

调用:sort(vec.begin(),vec.end(),Comp)


C++学习:vector用法

标签:c++   vector   向量   数组   迭代器   

原文地址:http://blog.csdn.net/chfe007/article/details/44059267

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!