[解決済み】C++ ベクトル要素を位置ではなく値で消去する?重複
2022-04-17 23:30:42
質問
vector<int> myVector;
で、ベクトルの中の値がこれ(この順番)だとします。
5 9 2 8 0 7
もし、"8"の値を含む要素を消したいと思ったら、こうすると思います。
myVector.erase(myVector.begin()+4);
なぜなら、それだと4番目の要素が消えてしまうからです。しかし、値 "8" に基づいて要素を消去する方法はあるのでしょうか? みたいなね。
myVector.eraseElementWhoseValueIs(8);
それとも、単純にすべてのベクター要素を繰り返し、その値をテストすればいいのでしょうか?
どのように解決するのですか?
どうですか?
std::remove()
の代わりに
#include <algorithm>
...
vec.erase(std::remove(vec.begin(), vec.end(), 8), vec.end());
この組み合わせは、別名 イレーズ・リムーブ・イディオム .
関連
-
[解決済み] string does not name a type Errorが発生するのはなぜですか?
-
[解決済み】浮動小数点例外エラーが発生する: 8
-
[解決済み】C++プログラムでのコンソールの一時停止
-
[解決済み】エラー。引数リストに一致するコンストラクタのインスタンスがない
-
[解決済み】 ベクターの重複を消去してソートする最も効率的な方法は何ですか?
-
[解決済み] ベクトルが与えられた要素を含むかどうかをテストする
-
[解決済み] なぜ、オブジェクトそのものではなく、ポインタを使用しなければならないのですか?
-
[解決済み] std::vector<> からインデックスで要素を消すにはどうしたらいいですか?
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
-
[解決済み] マップの要素をbeginからendまで繰り返しながらerase()を呼び出すとどうなるのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】構造体のベクター初期化について
-
[解決済み] [Solved] Error C1083: Cannot open include file: 'stdafx.h'
-
[解決済み】C++のGetlineの問題(オーバーロードされた関数 "getline "のインスタンスがない
-
[解決済み】関数名の前に期待されるイニシャライザー
-
[解決済み】「Expected '(' for function-style cast or type construction」エラーの意味とは?
-
[解決済み】Visual Studio 2013および2015でC++コンパイラーエラーC2280「削除された関数を参照しようとした」が発生する
-
[解決済み】#include<iostream>は存在するのですが、「識別子 "cout "は未定義です」というエラーが出ます。なぜですか?
-
[解決済み】ファイルから整数を読み込んで配列に格納する C++ 【クローズド
-
[解決済み】変数やフィールドがvoid宣言されている
-
[解決済み] ある値を持つstlベクターから項目を削除するにはどうすればよいですか?