C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C ++ STLのマップerase()関数


この記事では、C++STLでのmap::Erase()関数の動作、構文、および例について説明します。

C ++ STLのマップとは何ですか?

マップは連想コンテナであり、キー値とマップされた値の組み合わせによって形成された要素を特定の順序で格納するのを容易にします。マップコンテナでは、データは常に関連するキーを使用して内部的に並べ替えられます。マップコンテナの値には、その一意のキーによってアクセスされます。

map ::Erase()とは何ですか?

map ::Erase()は、

この関数は、コンテナから削除された要素の数だけ、マップコンテナのサイズを効果的に縮小します。

構文

map_name.erase(iterator pos);
map_name.erase(key_type &k);
map_name.erase(iterator start, iterator end);

パラメータ

この関数は以下を受け入れます

パラメータ

  • pos −削除する要素の位置と見なすことができるイテレータ。
  • k −これは、マップコンテナから削除するキー値です。
  • 開始、終了 −イテレータの「start」と「end」は、dequeコンテナから消去したい範囲の開始位置と終了位置を指定するために使用されます。

戻り値

削除が成功した場合、関数は1を返します。それ以外の場合は0を返します。

入力

map<char, int> newmap;
newmap[‘a’]
= 1;
newmap[‘b’] = 2;
newmap.erase(b);

出力

a

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.emplace(3, 50);
   TP_Map.emplace(2, 30);
   TP_Map.emplace(1, 10);
   TP_Map.emplace(4, 70);
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   //to erase the map values
   TP_Map.erase(1);
   TP_Map.erase(2);
   cout<<"\n\nAfter erasing the element: \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   return 0;
}

出力

TP Map is:
MAP_KEY    MAP_ELEMENT
1             10
2             30
3             50
4             70
After erasing the element:
MAP_KEY    MAP_ELEMENT
3             50
4             70

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.insert({3, 50});
   TP_Map.insert({2, 30});
   TP_Map.insert({1, 10});
   TP_Map.insert({4, 70});
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   //to erase the map values
   auto var = TP_Map.find(1);
   TP_Map.erase(var);
   auto var_1 = TP_Map.find(2);
   TP_Map.erase(var_1);
   cout<<"\n\nAfter erasing the element: \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   return 0;
}

出力

TP Map is:
MAP_KEY    MAP_ELEMENT
1             10
2             30
3             50
4             70
After erasing the element:
MAP_KEY    MAP_ELEMENT
3             50
4             70

  1. C ++ STLのerase()関数を一覧表示します

    この記事では、C++でのlist::Erase()関数の動作、構文、および例について説明します。 STLのリストとは何ですか? リストは、任意の場所で一定時間の挿入と削除を順番に実行できるデータ構造です。リストは、二重にリンクされたリストとして実装されます。リストを使用すると、連続しないメモリ割り当てが可能になります。リストは、配列、ベクトル、および両端キューよりも、コンテナー内の任意の位置で要素の挿入抽出と移動を実行します。リストでは、要素への直接アクセスは遅く、リストはforward_listに似ていますが、フォワードリストオブジェクトは単一のリンクリストであり、フォワードでのみ繰り返

  2. C ++ STLのIswctype()関数

    C ++標準テンプレートlibraray(STL)では、iswctype()関数を使用して、指定されたワイド文字にdescで指定されたプロパティがあるかどうかを確認します。 Iswctype()は、ヘッダーファイルが「ctype.h」である組み込み関数です。 Iswctype()の構文は次のとおりです int iswctype(wint_t c, wctype_t desc); iswctype () / Checks whether whether c has the property specified by desc. / あらすじ int iswctype(wint_t c, wc