Aracılığıyla paylaş


hash_set::insert

Not

Bu API artık kullanılmıyor.Alternatif unordered_set Class.

Bir öğe veya öğe aralığı ekler bir hash_set.

pair<iterator, bool> insert(
   const value_type& _Val
);
iterator insert(
   iterator _Where,
   const value_type& _Val
);
template<class InputIterator>
   void insert(
      InputIterator _First,
      InputIterator _Last
);

Parametreler

Parametre

Tanımlama

_Val

İçine eklenecek öğenin değerini hash_set sürece hash_set zaten o öğeye veya daha genel anahtar sipariş eşdeğer bir öğe içeriyor.

_Where

Ekleme noktasını doğru için aramayı başlatmak için yer. (Ekleme oluşabilir Logaritmik saat yerine amortized sabit zaman hemen ekleme noktasını izleyen, _Where.)

_First

Kopyalanacak ilk öğenin konumunu bir hash_set.

_Last

Konumu kopyalanacak yalnızca son öğenin ötesinde bir hash_set.

Dönüş Değeri

İlk insert üye işlevinin döndürdüğü çifti, bool bileşenini verir true ekleme yapma varsa ve false , hash_set anahtar sıralaması içinde eşdeğer bir değeri vardı ve Yineleyici bileşeni yeni öğenin eklendiği yerde veya öğenin bulunduğu yerde adresini döndürür öğe zaten yer.

Yineleyici bileşen çiftinin erişmek için pr kullanmak bu üye işlevi tarafından döndürülen, pr.first ve başvurabilir, *(pr.first). Erişim için bool bileşen çiftinin pr kullanmak bu üye işlevi tarafından döndürülen, pr.secondve başvurabilir, *(pr.second).

İkinci insert üye işlevini verir, burada yeni öðe eklenir içine konumu işaret eden bir yineleyici hash_set.

Notlar

Üçüncü üye işlevi öğe değerlerinin dizisini ekler bir hash_set Yineleyici aralığında tarafından gönderilen her öğeye karşılık gelen [_First, _Last) belirtilen hash_set.

Örnek

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

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_set <int>::iterator hs1_pIter, hs2_pIter;

   hash_set <int, hash_compare <int, less<int> > > hs1, hs2;
   hs1.insert( 10 );
   hs1.insert( 20 );
   hs1.insert( 30 );
   hs1.insert( 40 );

   cout << "The original hs1 =";
   for ( hs1_pIter = hs1.begin( ); hs1_pIter != hs1.end( );
         hs1_pIter++ )
      cout << " " << *hs1_pIter;
   cout << "." << endl;

   pair< hash_set<int>::iterator, bool > pr;
   pr = hs1.insert( 10 );

   if(pr.second == true)
   {
      cout << "The element 10 was inserted in hs1 successfully."
           << endl;
   }
   else
   {
      cout << "The element 10 already exists in hs1 and"
           << " *( pr.first ) = " << *( pr.first ) << "."
           << endl;
   }

   hs1.insert( --hs1.end( ), 50 );

   cout << "After the insertions, hs1 =";
   for ( hs1_pIter = hs1.begin( ); hs1_pIter != hs1.end( );
         hs1_pIter++ )
      cout << " " << *hs1_pIter;
   cout << "." << endl;

   hs2.insert( 100 );
   hs2.insert( ++hs1.begin( ), --hs1.end( ) );

   cout << "hs2 =";
   for ( hs2_pIter = hs2.begin( ); hs2_pIter != hs2.end( );
         hs2_pIter++ )
      cout << " " << *hs2_pIter;
   cout << "." << endl;
}
  
  
  
  

Gereksinimler

Başlık: <hash_set>

Ad alanı: stdext

Ayrıca bkz.

Başvuru

hash_set Class

Standart Şablon Kütüphanesi