list::difference_type
Un tipo interi con segno che può essere utilizzato per rappresentare il numero di elementi di un elenco in un intervallo tra elementi indicato dagli iteratori.
typedef typename Allocator::difference_type difference_type;
Note
difference_type è il tipo restituito quando viene sottratto o incrementando con gli iteratori del contenitore.difference_type in genere utilizzato per rappresentare il numero di elementi nell'intervallo [_First, _Last) tra gli iteratori _First e _Last, include l'elemento fa riferimento da _First e l'intervallo degli elementi fino a, ma a esclusione di, l'elemento fa riferimento da _Last.
Si noti che anche se difference_type sia disponibile per tutti gli iteratori che soddisfano le esigenze di un iteratore di input, che include la classe di iteratori bidirezionali supportato dai contenitori reversibili come set, sottrazione fra gli iteratori solo supportato dagli iteratori di accesso casuale forniti da un contenitore a accesso casuale, come classe vettoriale.
Esempio
// list_diff_type.cpp
// compile with: /EHsc
#include <iostream>
#include <list>
#include <algorithm>
int main( )
{
using namespace std;
list <int> c1;
list <int>::iterator c1_Iter, c2_Iter;
c1.push_back( 30 );
c1.push_back( 20 );
c1.push_back( 30 );
c1.push_back( 10 );
c1.push_back( 30 );
c1.push_back( 20 );
c1_Iter = c1.begin( );
c2_Iter = c1.end( );
list <int>::difference_type df_typ1, df_typ2, df_typ3;
df_typ1 = count( c1_Iter, c2_Iter, 10 );
df_typ2 = count( c1_Iter, c2_Iter, 20 );
df_typ3 = count( c1_Iter, c2_Iter, 30 );
cout << "The number '10' is in c1 collection " << df_typ1 << " times.\n";
cout << "The number '20' is in c1 collection " << df_typ2 << " times.\n";
cout << "The number '30' is in c1 collection " << df_typ3 << " times.\n";
}
Requisiti
intestazione: <list>
Spazio dei nomi: deviazione standard