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

C ++ STLのkey_comp()関数をマップします


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

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

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

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

map ::key_comp()は、 ヘッダーファイルの下にある関数です。この関数は、キー比較オブジェクトのコピーを返します。これはデフォルトでlessthanオブジェクトであり、lessthan演算子<のように機能します。オブジェクトは、マップコンテナ内の要素キーの順序をチェックします。この関数は2つの引数を取り、そのキーをチェックし、最初の要素が小さく、2番目の要素の前に配置する必要がある場合はtrueを返し、そうでない場合はfalseを返します。

構文

Key_compare.key_comp();

パラメータ

この関数はパラメータを受け入れません。

戻り値

比較オブジェクトを返します。

入力

map<char, int> newmap;
map<char, int> :: key_compare cmp = newmap.key_comp();
newmap[‘a’] = 1;
newmap[‘b’] = 2;
newmap[‘c’] = 3;

出力

a = 1
b = 2
c = 3

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, char> TP;
   map<int, char>::key_compare cmp = TP.key_comp();
   // Inserting elements
   TP[0] = 'a';
   TP[1] = 'b';
   TP[2] = 'c';
   TP[3] = 'd';
   cout<<"Elements in the map are : \n";
   int val = TP.rbegin()->first;
   map<int, char>::iterator i = TP.begin();
   do {
      cout << i->first << " : " << i->second<<'\n';
   } while (cmp((*i++).first, val));
   return 0;
}

出力

Elements in the map are:
0 : a
1 : b
2 : c
3 : d

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<char, int> TP;
   map<char, int>::key_compare cmp = TP.key_comp();
   // Inserting elements
   TP['a'] = 0;
   TP['b'] = 1;
   TP['c'] = 3;
   TP['d'] = 2;
   cout<<"Elements in the map are : \n";
   char val = TP.rbegin()->first;
   map<char, int>::iterator i = TP.begin();
   do {
      cout << i->first << " : " << i->second<<'\n';
   } while (cmp((*i++).first, val));
   return 0;
}

出力

Elements in the map are:
a : 0
b : 1
c : 3
d : 2

  1. C ++ STLのiswblank()関数

    C ++のiswblank()関数は、指定されたワイド文字が空白でないかどうかを確認するために使用されます。これは、C言語の「ctype.h」ヘッダーファイルとC ++標準テンプレートライブラリ(STL)の「cctype」ヘッダーファイルにあります。 iswblankの構文は次のとおりです int iswblank(wint_t ch) 返品タイプ −空白が含まれている場合はゼロ以外の値を返し、含まれていない場合は値0を返します。 パラメータ − ch −これはチェックする文字です。 例 入力 − string str =“ I Love Myself” 出力 −スペースの総数は−

  2. C++STLでのセットとマップ

    Setは抽象データ型であり、要素の値によって要素が識別されるため、各要素は一意である必要があります。要素の値は、セットに追加されると変更できませんが、その要素の変更された値を削除して追加することはできます。 マップは、マップされた方法で要素を格納する連想コンテナです。各要素には、キー値とマップされた値があります。 2つのマップされた値が同じキー値を持つことはできません。 したがって、上記から明らかなように、setには唯一のキーが含まれ、mapにはキーを持つ値が含まれ、どちらも一意でソートされた値を持つ必要があります。 順序付けされていない要素と並べ替えられていない要素には、unorder