C++ STL では、次の方法でさまざまなコンテナから要素を削除できます: ベクトルから削除: イテレータまたはインデックスを使用します。リストから削除: イテレータを使用します。セットから削除するには: 削除する要素を値とする Erase() メソッドを使用します。マップから削除: 削除する要素のキー値を指定して Erase() メソッドを使用します。
C++ STL コンテナから要素を削除する方法
C++ 標準テンプレート ライブラリ (STL) には、データの整理に使用できるコンテナがいくつかあります。これらのコンテナは、要素の削除などのさまざまな操作をサポートします。この記事では、さまざまな種類の STL コンテナから要素を削除するさまざまな方法について説明します。
ベクトルから要素を削除する
ベクトルから要素を削除するには、次のいずれかの方法を使用できます:
// 使用迭代器 vector<int> vec; vec.push_back(10); vec.push_back(20); vec.erase(vec.begin() + 1); // 删除 vec[1] // 使用索引 vec.erase(vec.begin(), vec.begin() + 1); // 删除 vec[0]
リストから要素を削除する
リストから要素を削除するには、次のメソッドを使用できます:
list<int> lst; lst.push_back(10); lst.push_back(20); lst.erase(lst.begin()); // 删除第一个元素
セットから要素を削除する
セットから要素を削除するには、次のメソッドを使用できます:
set<int> st; st.insert(10); st.insert(20); st.erase(10); // 删除值为 10 的元素
マップから要素を削除する
マップから要素を削除するには、次の方法を使用してください:
map<int, string> mp; mp.insert(pair<int, string>(10, "Hello")); mp.insert(pair<int, string>(20, "World")); mp.erase(10); // 删除具有 key 为 10 的元素
実際のケース:
学術コースでの生徒の成績を追跡するアプリを考えてみましょう。このアプリケーションは STL コンテナを使用して生徒とその成績を保存します。次の例は、コンテナから学生とその成績記録を削除する方法を示しています:
map<string, int> student_成績; student_成績.insert(pair<string, int>("John", 90)); student_成績.insert(pair<string, int>("Mary", 80)); // 从映射中删除 John 的记录 student_成績.erase("John");
上記の方法を使用すると、さまざまな STL コンテナから要素を簡単かつ効率的に削除できます。
以上がC++ STL コンテナから要素を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。