list::difference_type
Typ Liczba całkowita ze znakiem, używany do reprezentowania liczba elementów listy w zakresie między elementami wskazywanej przez Iteratory.
typedef typename Allocator::difference_type difference_type;
Uwagi
difference_type Typ zwracany jest odjęcie lub zwiększany poprzez Iteratory kontenera.difference_type Jest zazwyczaj używany do reprezentowania liczbę elementów w zakresie [_First, _Last) między Iteratory _First i _Last, zawiera elementu wskazywanego przez _First i zakres elementów do, z wyjątkiem elementu wskazywanego przez _Last.
Należy zauważyć, że chociaż difference_type jest dostępna dla wszystkich Iteratory, które spełniają wymogi wprowadzania iteratora, która zawiera klasę Iteratory dwukierunkowy obsługiwane przez pojemniki odwracalnych jak zestaw odejmowania między Iteratory jest obsługiwana tylko przez Iteratory random access przewidzianym kontenera random access, takich jak klasy vector.
Przykład
// 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";
}
Wymagania
Nagłówek: <list>
Obszar nazw: std