C++中的vector erase函數用于從向量中刪除一個或多個元素。它的作用是將指定位置的元素或指定范圍內的元素從向量中移除,并更新向量的大小。
erase函數有兩種使用方式:
例如,以下代碼演示了erase函數的使用:
#include <iostream>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 刪除單個元素
numbers.erase(numbers.begin() + 2); // 刪除索引為2的元素
// 刪除多個元素
numbers.erase(numbers.begin(), numbers.begin() + 2); // 刪除前兩個元素
// 輸出向量中的元素
for (int num : numbers) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
輸出結果為:
4 5
在上面的示例中,向量開始時包含元素1, 2, 3, 4, 5。首先,erase函數用于刪除索引為2的元素,即數字3。然后,erase函數再次用于刪除索引為0和1的元素,即數字1和2。最后,向量中只剩下數字4和5,并且這些元素被輸出。