举一个begin函数的C++代码例子
时间: 2024-03-26 11:39:16 浏览: 128
当我们使用STL容器vector时,可以使用begin函数获取该vector的第一个元素的迭代器,如下所示:
```c++
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
auto it = vec.begin(); // 获取vec的第一个元素的迭代器
std::cout << *it << std::endl; // 输出1
return 0;
}
```
在上面的例子中,我们创建了一个vector容器,并用1、2、3、4、5初始化了它。然后,我们使用begin函数获取vec的第一个元素的迭代器,并将该迭代器赋值给变量it。最后,我们输出it所指向的元素值,即1。
相关问题
请举一个例子说明C++ list容器使用erase函数的用法
C++中的list容器使用erase函数可以删除容器中指定位置或指定元素的值。例如,以下代码可以删除list容器中第二个元素:
```c++
#include <iostream>
#include <list>
using namespace std;
int main() {
list<int> mylist = {1, 2, 3, 4, 5};
auto it = mylist.begin();
advance(it, 1);
mylist.erase(it);
for (auto i : mylist) {
cout << i << " ";
}
return 0;
}
```
输出结果为:1 3 4 5
在这个例子中,我们使用了advance函数将迭代器it移动到第二个元素的位置,然后使用erase函数删除该元素。最后,我们遍历list容器并输出其余元素的值。
请举一个例子说明C++ list容器使用erase函数的方法
当使用C++中的list容器时,可以使用erase函数来删除容器中的元素。erase函数有两种用法:
1. 删除单个元素
可以使用erase函数删除list容器中的单个元素,例如:
```c++
list<int> mylist = {1, 2, 3, 4, 5};
auto it = mylist.begin();
advance(it, 2); // it指向第3个元素,即3
mylist.erase(it); // 删除第3个元素
```
在上面的代码中,我们首先创建了一个包含5个整数的list容器mylist,然后使用advance函数将迭代器it指向第3个元素,最后使用erase函数删除了第3个元素。
2. 删除一段元素
除了删除单个元素外,还可以使用erase函数删除list容器中的一段元素,例如:
```c++
list<int> mylist = {1, 2, 3, 4, 5};
auto it1 = mylist.begin();
auto it2 = mylist.begin();
advance(it1, 1); // it1指向第2个元素,即2
advance(it2, 4); // it2指向第5个元素,即5
mylist.erase(it1, it2); // 删除第2个到第5个元素
```
在上面的代码中,我们首先创建了一个包含5个整数的list容器mylist,然后使用advance函数将迭代器it1指向第2个元素,将迭代器it2指向第5个元素,最后使用erase函数删除了第2个到第5个元素。
注意:在使用erase函数删除元素时,要注意迭代器的有效性,避免出现迭代器失效的情况。
阅读全文