qt std::vector删除
时间: 2023-12-14 13:03:36 浏览: 72
要删除Qt中的std::vector中的元素,您可以使用erase()函数。erase()函数接受一个迭代器参数,指示要删除的元素的位置。以下是一个示例代码片段,演示如何删除std::vector中的元素:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 在删除之前打印原始向量
for (const auto& element : vec) {
std::cout << element << " ";
}
std::cout << std::endl;
// 删除索引为2的元素(值为3)
vec.erase(vec.begin() + 2);
// 在删除后打印向量
for (const auto& element : vec) {
std::cout << element << " ";
}
std::cout << std::endl;
return 0;
}
```
这段代码将输出:
```
1 2 3 4 5
1 2 4 5
```
在这个例子中,我们使用`erase()`函数删除了索引为2的元素(值为3),并打印了删除前后的向量。请注意,我们使用`vec.begin() + 2`作为`erase()`函数的参数来获得要删除的元素的迭代器。
希望这对您有所帮助!如果您有任何其他问题,请随时提问。
阅读全文