您的位置:首页 > 编程语言 > C语言/C++

C++【container】 vector基本操作

2018-03-16 13:52 369 查看
想编写一个Sample,用来实现C++容器类的基本操作,算法考试需要。

Advantage

如果想在C++中实现对象一维数组,那最好使用C++提供的vector容器。vector容器,它能够使你不再用C中的allocate和malloc实现动态数组内存分配,利用C++提供的这个功能,能给比赛省下不少时间。尤其是偶尔出现删除和增加的数据结构,处理传统数组会比较麻烦。

定义

vector在C++中提供了几个较为便捷的属性:

假设我们定义一个长度为20的数组,参数类型为int

vector <int> vec(20,0);//每个元素的值为0


获得第一个元素和最后一个元素分别:

cout<<vec.front()<<endl;
cout<<vec.back()<<endl;


通过 “[]” 索引访问变成具有类型检查的at方法:

cout<<vec.at(index);


赋值语句和C语言一样,不加赘述。

增删

值得注意的是C++对于vector的增删函数要传入迭代子参数

获得指向第一个元素的迭代子或者指向最后一个元素的迭代子

vec.begin();//指向第一个元素
vec.end();//指向最后一个元素
vec.begin()+1;//指向第二个元素的迭代子


删除指定位置元素

vec.erase(vec.begin()+index);


在指定位置之前增加元素

vec.insert(vec.begin()+index,insertionValue);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: