multimap::difference_type
Type entier signé qui peut être utilisé pour représenter le nombre d'éléments d'un mappage multiples dans une plage entre les éléments a référencé par les itérateurs.
typedef typename allocator_type::difference_type difference_type;
Notes
difference_type est le type retourné en soustrayant ou en incrémentiel via les itérateurs du conteneur. difference_type est généralement utilisé pour représenter le nombre d'éléments dans la plage [_First, _Last) entre les itérateurs _First et _Last, inclut l'élément référencé par _First et la plage des éléments jusqu'à, mais sans, l'élément référencé par le _Last.
Notez que même si difference_type soit disponible pour tous les itérateurs qui répondent aux besoins d'un itérateur d'entrée, qui inclut la classe les itérateurs bidirectionnels un objet pris en charge par les conteneurs réversibles tels que le jeu, soustraction entre les itérateurs est pris en charge par les itérateurs l'accès aléatoire fournis par un conteneur l'accès aléatoire tel que le vecteur.
Exemple
// multimap_diff_type.cpp
// compile with: /EHsc
#include <iostream>
#include <map>
#include <algorithm>
int main( )
{
using namespace std;
multimap <int, int> m1;
typedef pair <int, int> Int_Pair;
m1.insert ( Int_Pair ( 2, 20 ) );
m1.insert ( Int_Pair ( 1, 10 ) );
m1.insert ( Int_Pair ( 3, 20 ) );
// The following will insert as multimap keys are not unique
m1.insert ( Int_Pair ( 2, 30 ) );
multimap <int, int>::iterator m1_Iter, m1_bIter, m1_eIter;
m1_bIter = m1.begin( );
m1_eIter = m1.end( );
// Count the number of elements in a multimap
multimap <int, int>::difference_type df_count = 0;
m1_Iter = m1.begin( );
while ( m1_Iter != m1_eIter )
{
df_count++;
m1_Iter++;
}
cout << "The number of elements in the multimap m1 is: "
<< df_count << "." << endl;
}
Configuration requise
En-tête : <mappage>
Espace de noms : std