どうも、ちょげ(@chogetarou)です。
Vectorの最後の要素を削除する方法を紹介します。
方法

Vectorの末尾の要素を削除する方法は、3つあります。
pop_back()
1つ目は、pop_back()を使う方法です。
具体的には、「vect.pop_back()
」のように、Vectorからpop_back()を引数なしで呼び出します。
//vect=任意のVector
vect.pop_back();
上記のpop_back()は、Vectorの末尾の要素を削除します。
使用例
#include <iostream>
#include <vector>
using namespace std;
int main(void){
vector<int> num = { 1, 2, 3, 4, 5 };
num.pop_back();
for (int &i: num) {
cout << i << endl;
}
}
出力:
1
2
3
4
erase()
2つ目は、erase()を使う方法です。
まず、Vectorからerase()を呼び出します。
そして、erase()の引数に、Vectorのend()を「ー1」した値を指定します。
//vect=任意のVector
vect.erase(vect.end() - 1);
上記のerase()は、Vectorの最後の要素を削除します。
使用例
#include <iostream>
#include <vector>
using namespace std;
int main(void){
vector<int> num = { 1, 2, 3, 4, 5 };
num.erase(num.end() - 1);
for (int &i: num) {
cout << i << endl;
}
}
出力:
1
2
3
4
resize()
3つ目は、resize()を使う方法です。
まず、Vectorからresize()を呼び出します。
そして、resize()の引数に、Vectorのsize()を「ー1」した値を指定します。
//vect=任意のVector
vect.resize(vect.size() - 1);
上記のresize()は、Vectorの最後の要素を削除します。
使用例
#include <iostream>
#include <vector>
using namespace std;
int main(void){
vector<int> num = { 1, 2, 3, 4, 5 };
num.resize(num.size() - 1);
for (int &i: num) {
cout << i << endl;
}
}
出力:
1
2
3
4
まとめ
Vectorの末尾の要素を削除する方法は、次の3つです。
- pop_back()を使う方法
vect.pop_back();
- erase()を使う方法
vect.erase(vect.end() - 1);
- resize()を使う方法
vect.resize(vect.size() – 1);
コメント