用vector定义一个数组,用完了,还想继续在这个数组中添加数据,怎么办

用vector定义一个数组,用完了,还想继续在这个数组中添加数据,怎么办,第1张

vector 是一个容器,它更像是一个可以动态增长长度的 数组,但功能要比数组强大的多,

它有它的方法 ,它可以动态申请空间,你可以 直接调用 .push_back 方法 向里面添加数据。

你可以从数组构造

比如int a[] = { 0,1,3,5,6,4,2.... }

vector<int>v( a, a + sizeof( a ) / sizeof( a[0] ) )

动态添加就只有用push_back了

楼下说的对,我都快忘了。可以用resize预置vector的容量,这样就能免除push_back由于空间超过默认分配的定量内存时而重分配更大的一块新空间并把原内容重新拷过去所带来的效率损失,vector内部自动维护了一块定量的内存,这个空间可以用capacity()方法查看。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11957768.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存