cpp中vector的使用
Published on 2021-12-05 10:36 in 分类: C-CPP with dutrmp19
分类: C-CPP

cpp中vector的使用

vector的使用

创建

vector<int> a;

a.push_back(3);
a.insert(a.begin(), 4);
a.insert(a.begin()+1, 5);

erase一个迭代器,然后删除之,pop_back是删除最后一个元素,clear直接清空所有。

a.erase(a.begin());
a.pop_back();
a.clear();

直接下标修改和通过迭代器修改。

a[0] = 100;
*a.begin() = 50;

通过下标或者迭代器访问元素即可,.back()访问最后一个元素的值

a.push_back(1);
cout <<a.back() << endl;
cout << a[1] << endl;
cout << *(a.end()-1) << endl;

迭代删除

利用erase返回下一个元素的特性,删除完以后,让it向后移动一下。

a.clear();
for (int i = 0; i < 10; i++) a.push_back(i);
auto it = a.begin();
while (it != a.end()) {
if (*it >= 5) {
it = a.erase(it);
} else {
it++;
}
}
for (auto i : a) {
cout << i << " ";
}

如果您有任何关于文章的建议,欢迎评论或在 GitHub 提 PR

作者:dutrmp19
本文为作者原创,转载请在 文章开头 注明出处:https://www.cnblogs.com/dutrmp19/p/15644302.html
遵循 CC 4.0 BY-SA 版权协议


posted @   dutrmp19  阅读(473)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示