どうも、ちょげ(@chogetarou)です。
Vectorの特定の範囲を削除する方法を紹介します。
方法

Vectorの特定の範囲を削除するには、erase()を使います。
まず、Vectorからerase()を呼び出します。
そして、erase()の第1引数に範囲の最初の位置、第2引数に範囲の最後の位置をイテレータの要素で指定します。
//myVect=対象のVector,
//first=範囲の最初の位置(イテレータの要素), end=範囲の最後の位置(イテレータの要素)
myVect.erase(first, end);
上記のerase()は、対象のVectorの第1引数から第2引数までの範囲を削除します。
使用例
#include <iostream>
#include <vector>
using namespace std;
int main(void){
vector<string> nums = { "one", "two", "three", "four", "five", "six", "seven"};
auto first = nums.begin() + 3;
auto end = nums.begin() + 5;
nums.erase(first, end);
for(string item: nums) {
cout << item << endl;
}
return 0;
}
出力:
one
two
three
six
seven
コメント