どうも、ちょげ(@chogetarou)です。
Vectorの先頭からN個の要素を削除する方法を紹介します。
方法

Vectorの先頭からN個の要素を削除するには、erase()を使います。
まず、Vectorからerase()を呼び出します。
そして、erase()の第1引数にVectorから呼び出したbegin()、第2引数にVectorから呼び出したbegin()に削除する要素数を足した結果を指定します。
//myVect=対象のVector, N=削除する要素数
myVect.erase(myVect.begin(), myVect.begin() + N);
上記のerase()は、対象のVectorの先頭からN個の要素を削除します。
使用例
#include <iostream>
#include <vector>
using namespace std;
int main(void){
vector<string> nums = { "one", "two", "three", "four", "five", "six", "seven"};
int n = 3;
auto first = nums.begin();
nums.erase(first, first + 3);
for(string item: nums) {
cout << item << endl;
}
return 0;
}
出力:
four
five
six
seven
コメント