欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > vector 容器基础操作及用法

vector 容器基础操作及用法

2025/4/3 14:43:30 来源:https://blog.csdn.net/wcj_______/article/details/142059776  浏览:    关键词:vector 容器基础操作及用法

目录

vector 容器基础操作及用法

一:定义及初始化

二:添加数据

三:删除数据


vector 容器基础操作及用法

C++STL是一个非常强大的容器库,其中 vector 是最为常用也较为方便的容器之一,下面主要介绍一下 vector 的一些基础操作。

一:定义及初始化

vector <type> v;

type 是你要存储进容器中的数据的类型,比如 int、string、当然也可以是自定义类型……,注意存储的数据类型必须保持一致

vector<int> v(10,1);

如上面的一行代码所示,定义了一个 int 型的容器 v,它的 size 是10,且初始化每个元素的初始值为1。

二:添加数据

将数据存储进 vector 容器中,一般使用的都是 push_back(),将数据添加到 vector 数组末端,除非要在某个位置插入数据,否则,就尽量不要使用 insert(),因为有一些易错点,会导致程序运行错误。

vector<int> v;
v.push_back(1);

用 insert ()插入数据时要注意括号里的参数不可以写成 int 型,而是指向要插入位置的迭代器。

vector<int> v;
//…… …… …… …… …… …… …… …… ……
v.insert(v.begin()+m,n); 

这表示在下标为 v.begin()+m 的位置上插入 int 型数据 n。 

三:删除数据

删除数据用的是erase()函数,可以删除一个或者一段元素。

若删除一个元素,erase(iterator position),括号内为指向要删除位置的迭代器,并返回删除元素的下一个元素的迭代器。

#include <iostream>
#include <vector>
using namespace std;
int main()
{vector<int> v;for(int i=0;i<10;i++)v.push_back(i);v.erase(v.begin()+2);for(int i=0;i<v.size();i++)cout<<v[i]<<" ";
} 

运行结果如下

若删除一段元素,erase(iterator first,iterator last),删除从 first 到 last (不包含 last),并返回 last 位置迭代器。

#include <iostream>
#include <vector>
using namespace std;
int main()
{vector<int> v;for(int i=0;i<10;i++)v.push_back(i);v.erase(v.begin()+1,v.begin()+5);for(int i=0;i<v.size();i++)cout<<v[i]<<" ";
} 

运行结果如下

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词