本文主要介绍了c矢量常用函数的分析,通过实例代码进行了非常详细的介绍,对大家的学习或工作有一定的参考价值。有需要的朋友下面和边肖一起学习。
c++ vector 常用函数
就像数组一样,向量对其元素使用连续的存储位置,这意味着也可以使用指向其元素的常规指针上的偏移量来访问其元素,就像在数组中一样高效。但与数组不同,它们的大小可以动态变化,其存储由容器自动处理。
Vector也是一个数组,但是它的内存大小是动态变化的。当vector占用的内存满了,就要重新分配内存,把原来的元素全部赋值。为了避免频繁地重新分配内存,数据将被迁移。Vector实际上分配了比你需要的更多的内存。比如vector中有10 int数据,vector实际占用的内存是20 int内存。当数据占用的内存超过实际内存时,vector会自动重新分配内存并迁移数据。vector实际占用的内存可以通过capacity()来检查
#includeiostream
# includevector
使用命名空间std
int main(){
矢量ans
for(int I=0;i10I)ans . push _ back(I);
ans . erase(ans . begin()2);
Cout '擦除第三个数字:';
for(int j=0;jans . size();j)coutans[j]“”;
ans.erase(ans.begin(),ans . begin()2);
Coutendl '删除前两个数字:';
for(int k=0;kans . size();k)coutans[k]“”;
//尽量不要频繁使用这个函数,这样会造成大量的数据移动,降低程序效率。
ans.insert(ans.begin() 1,100);
Coutendl '在第一个数字后插入100:';
for(int m=0;mans . size();m)coutans[m]“”;
//vector可以在声明的时候声明它的大小和默认值。
矢量温度(5,-1);
Coutendl'temp的大小为5,默认值为-1:';
for(int l=0;ltemp . size();l)cout temp[l]' ';
//resize(int n)更改向量中实际存储的数据数量。如果n大于实际数,多余的位加0,否则会截取冗余数据。
temp . resize(8);
Coutendl '通过第8位更改temp的大小:';
for(int h=0;htemp . size();h)cout temp[h]' ';
//还可以在改变vector大小的同时指定多余内存的值;此方法仅适用于分配的空间大于原始空间的情况。
temp.resize(10,1111);
coutendl'temp的大小更改为10,并指定额外空间的值位11111:';
for(int g=0;gt EMP . size();g)cout temp[g]' ';
“Coutendl”获取temp的第一个元素:“temp.front()endl”获取temp的最后一个元素:“temp . back();
//empty()和size函数常用来判断向量是否为空。当向量为空时,empty()返回true,size()的值为0。
返回0;}
此外,您可以使用#includealgorithm库中的唯一函数来删除vector中的重复元素。
矢量ans
ans.erase(unique(ans.begin(),ans.end()),ans . end());
关于c向量常用函数的分析这篇文章到此为止。更多关于c矢量常用函数的信息,请搜索我们之前的文章或者继续浏览下面的相关文章。希望你以后能支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。