hash_multimap::difference_type
[!NOT]
Bu API artık kullanılmıyor.Alternatif unordered_multimap Class.
Bir hash_multimap yineleyiciler göre sıralanmasını öğeler arasındaki aralık içinde öğelerin sayısını temsil etmek için kullanılan imzalı tamsayı türü.
typedef list<typename _Traits::value_type, typename _Traits::allocator_type>::difference_type difference_type;
Notlar
difference_type Çıkarılarak veya kapsayıcının yineleyiciler artırma türü döndürülür.difference_type Genellikle aralıktaki öğelerin sayısını temsil eden [_First, _Last) yineleyiciler arasında _First ve _Last, tarafından işaret öğesini içeren _First ve aralık kadar ancak içerdiği öğelerin öğe tarafından gösterilir _Last.
Ancak dikkat edin difference_type olarak ayarlanırsa, yineleyiciler arasında çıkarma yalnızca vektör gibi rasgele erişim kapsayıcısı tarafından sağlanan rasgele erişim yineleyiciler tarafından desteklenen ters çevrilebilir kapsayıcılar tarafından desteklenen çift yönlü yineleyiciler sınıfı içeren bir giriş Yineleyici gereksinimlerini karşılayan tüm yineleyiciler için kullanılabilir.
Visual C++ .NET 2003, üyeleri de <hash_map> ve <hash_set> başlık dosyaları artık std ad alanında bulunan, ancak bunun yerine stdext ad alanına taşınmış.Bkz: ad stdext daha fazla bilgi için.
Örnek
// hash_multimap_difference_type.cpp
// compile with: /EHsc
#include <iostream>
#include <hash_map>
#include <algorithm>
int main()
{
using namespace std;
using namespace stdext;
hash_multimap<int, int> hm1;
typedef pair<int, int> Int_Pair;
hm1.insert(Int_Pair(2, 20));
hm1.insert(Int_Pair(1, 10));
hm1.insert(Int_Pair(3, 20));
// The following will insert, because map keys
// do not need to be unique
hm1.insert(Int_Pair(2, 30));
hash_multimap<int, int>::iterator hm1_Iter, hm1_bIter, hm1_eIter;
hm1_bIter = hm1.begin();
hm1_eIter = hm1.end();
// Count the number of elements in a hash_multimap
hash_multimap<int, int>::difference_type df_count = 0;
hm1_Iter = hm1.begin();
while (hm1_Iter != hm1_eIter)
{
df_count++;
hm1_Iter++;
}
cout << "The number of elements in the hash_multimap hm1 is: "
<< df_count << "." << endl;
cout << "The keys of the mapped elements are:";
for (hm1_Iter= hm1.begin() ; hm1_Iter!= hm1.end();
hm1_Iter++)
cout << " " << hm1_Iter-> first;
cout << "." << endl;
cout << "The values of the mapped elements are:";
for (hm1_Iter= hm1.begin() ; hm1_Iter!= hm1.end();
hm1_Iter++)
cout << " " << hm1_Iter-> second;
cout << "." << endl;
}
Gereksinimler
Başlık: <hash_map>
Ad alanı: stdext