C++ 迭代器与容器访问的深入解析
1. 使用迭代器在容器中插入新元素
在处理容器时,常常需要在容器的开头、结尾或中间插入新元素。但直接使用普通迭代器(如 begin() 返回的迭代器)进行插入操作,可能会覆盖容器中的元素,而且使用 end() 返回的迭代器无法在容器末尾插入元素。为解决这些问题,标准库提供了一组迭代器和迭代器适配器。
1.1 准备工作
相关的迭代器和适配器位于 <iterator> 头文件的 std 命名空间中。如果包含了 <algorithm> 等头文件,就无需显式包含 <iterator> 。
1.2 操作步骤
可以使用以下迭代器适配器在容器中插入新元素:
- std::back_inserter() :用于在具有 push_back() 方法的容器末尾插入元素。示例代码如下:
std::vector<int> v{ 1,2,3,4,5 };
std::fill_n(std::back_inserter(v), 3, 0);
// v={1,2,3,4,5,0,0,0}
-
std::front_inserter():用于在具有push_front(
超级会员免费看
订阅专栏 解锁全文
3349

被折叠的 条评论
为什么被折叠?



