c++ vector访问第一个元素并删除
时间: 2023-08-18 13:38:57 浏览: 1754
可以使用 `front()` 函数访问 vector 中的第一个元素,使用 `erase()` 函数删除第一个元素。
```c++
std::vector<int> v{1, 2, 3, 4, 5};
// 访问并删除第一个元素
int first = v.front();
v.erase(v.begin());
```
注意,如果 vector 中没有元素,使用 `front()` 函数会导致 undefined behavior(未定义行为),因此在访问第一个元素之前需要先检查 vector 是否为空。
相关问题
c++ vector 删除元素
在C++中,vector是一个动态数组容器,可以方便地进行元素的插入、删除和访问操作。要删除vector中的元素,可以使用erase()函数或者使用pop_back()函数。
1. 使用erase()函数删除指定位置的元素:
vector提供了erase()函数,可以删除指定位置的元素。该函数接受一个迭代器参数,指向要删除的元素位置。删除后,后面的元素会自动向前移动填补空缺。
例如,要删除vector中的第三个元素,可以使用以下代码:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.erase(vec.begin() + 2); // 删除第三个元素
```
2. 使用pop_back()函数删除最后一个元素:
pop_back()函数用于删除vector中的最后一个元素。该函数不接受任何参数,直接将最后一个元素删除。
例如,要删除vector中的最后一个元素,可以使用以下代码:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.pop_back(); // 删除最后一个元素
```
需要注意的是,使用erase()函数删除元素时,要确保传入的迭代器指向有效的元素位置,否则可能会导致未定义行为。此外,删除元素后,vector的大小会相应减小。
c++ vector添加元素
在C++中,vector是一个动态数组容器,可以方便地添加、删除和访问元素。要向vector添加元素,可以使用push_back()函数或者insert()函数。
1. 使用push_back()函数:
push_back()函数用于在vector的末尾添加一个元素。例如,如果我们有一个名为vec的vector,并且要向其中添加一个整数元素10,可以使用以下代码:
```
vec.push_back(10);
```
2. 使用insert()函数:
insert()函数用于在vector的指定位置插入一个元素。它接受两个参数,第一个参数是要插入的位置的迭代器,第二个参数是要插入的元素的值。例如,如果我们有一个名为vec的vector,并且要在索引位置2处插入一个整数元素20,可以使用以下代码:
```
vec.insert(vec.begin() + 2, 20);
```
请注意,以上代码中的vec.begin()返回一个指向vector第一个元素的迭代器,加上偏移量2后即为要插入的位置。
阅读全文