Sdílet prostřednictvím


hash_set::difference_type

[!POZNÁMKA]

Toto rozhraní API je zastaralé.Alternativou je unordered_set Class.

Použitý představující počet prvků hash_set v rozsahu mezi prvky typu signed integer odkazuje iterátorů.

typedef list<typename Traits::value_type, typename Traits::allocator_type>::difference_type difference_type;

Poznámky

difference_type Typ vrácena odečtením nebo nezvyšuje prostřednictvím iterátorů kontejneru.difference_type Se obvykle používá představující počet prvků v rozsahu [_First, _Last) mezi iterátorů _First a _Last, obsahuje prvek odkazuje _First a rozsah prvků nahoru, ale ne včetně prvek odkazuje _Last.

Všimněte si, že ačkoli difference_type je k dispozici pro všechny iterátory, které splňují požadavky vstupní iterátor, který zahrnuje třída obousměrných iterátorů podporované vratné kontejnery jako sadu odčítání mezi iterátorů je podporována pouze iterátorů random access poskytuje kontejner náhodný přístup, například vektorové nebo deque.

V aplikaci Visual C++ .NET 2003, členové <hash_map> a <hash_set> jsou již v oboru názvů std soubory hlaviček, ale spíše být přesunut do oboru názvů stdext.Viz stdext obor názvů Další informace.

Příklad

// hash_set_diff_type.cpp
// compile with: /EHsc
#include <iostream>
#include <hash_set>
#include <algorithm>

int main( )
{
   using namespace std;
   using namespace stdext;

   hash_set <int> hs1;
   hash_set <int>::iterator hs1_Iter, hs1_bIter, hs1_eIter;

   hs1.insert( 20 );
   hs1.insert( 10 );
   hs1.insert( 20 );   // Won't insert as hash_set elements are unique

   hs1_bIter = hs1.begin( );
   hs1_eIter = hs1.end( );

   hash_set <int>::difference_type   df_typ5, df_typ10, df_typ20;

   df_typ5 = count( hs1_bIter, hs1_eIter, 5 );
   df_typ10 = count( hs1_bIter, hs1_eIter, 10 );
   df_typ20 = count( hs1_bIter, hs1_eIter, 20 );

   // The keys, and hence the elements, of a hash_set are unique,
   // so there is at most one of a given value
   cout << "The number '5' occurs " << df_typ5
        << " times in hash_set hs1.\n";
   cout << "The number '10' occurs " << df_typ10
        << " times in hash_set hs1.\n";
   cout << "The number '20' occurs " << df_typ20
        << " times in hash_set hs1.\n";

   // Count the number of elements in a hash_set
   hash_set <int>::difference_type  df_count = 0;
   hs1_Iter = hs1.begin( );
   while ( hs1_Iter != hs1_eIter)
   {
      df_count++;
      hs1_Iter++;
   }

   cout << "The number of elements in the hash_set hs1 is: " 
        << df_count << "." << endl;
}
  
  
  
  

Požadavky

Záhlaví: <hash_set>

Obor názvů: stdext

Viz také

Referenční dokumentace

hash_set Class

Standardní šablona knihovny