map::difference_type
Type entier signé qui peut être utilisé pour représenter le nombre d'éléments d'une carte dans un intervalle entre les éléments a référencé par les itérateurs.
typedef 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 _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 sélectif fournis par un conteneur l'accès sélectif tel que le vecteur.
Exemple
// map_diff_type.cpp
// compile with: /EHsc
#include <iostream>
#include <map>
#include <algorithm>
int main( )
{
using namespace std;
map <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 ) );
m1.insert ( Int_Pair ( 2, 30 ) );
map <int, int>::iterator m1_Iter, m1_bIter, m1_eIter;
m1_bIter = m1.begin( );
m1_eIter = m1.end( );
// Count the number of elements in a map
map <int, int>::difference_type df_count = 1;
m1_Iter = m1.begin( );
while ( m1_Iter != m1_eIter)
{
df_count++;
m1_Iter++;
}
cout << "The number of elements in the map m1 is: "
<< df_count << "." << endl;
}
Configuration requise
En-tête : <mappage>
Espace de noms : std