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

C++STLでget_allocatorをマップします


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

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

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

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

map ::get_allocator()は、 ヘッダーファイルの下にある関数です。 get_alloctaor()は、マップコンテナに関連付けられているアロケータオブジェクトを取得するために使用されます。この関数は、指定されたマップのアロケータオブジェクトのコピーを返します。

構文

map_name.get_allocator(key_value k);

パラメータ

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

戻り値

マップのアロケータオブジェクトを返します。

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP;
   map<int, int>::allocator_type tp = TP.get_allocator();
   cout << "checking Is allocator Pair<int, int> : "<<
   boolalpha << (tp == allocator<pair<int, int> >());
   return 0;
}

出力

checking Is allocator Pair<int, int> : true

#include <bits/stdc++.h>
using namespace std;
int main(void) {
   map<char, int> TP;
   pair<const char, int>* TP_pair;
   TP_pair = TP.get_allocator().allocate(5);
   cout<<"Size after allocating is: " << sizeof(*TP_pair) * 5 << endl;
   return 0;
}

出力

Size after allocating is: 40

  1. C ++ STLのstable_sort()

    STLのstable_sortメソッドは、最初に名前をキーとしてコンポーネントを昇順でソートし、その後、コンポーネントをセグメントをキーとして配置します。さらに、stable_sort()の計算は、同等のコンポーネントの全体的な要求が維持されているという事実に照らして、安定していると見なされます。これは、次のように示されるstable_sort()計算を示すC++プログラムのソースコードです。 例 #include <bits/stdc++.h> using namespace std; int main(){    int arr[] = { 11, 15,

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

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