Udostępnij za pośrednictwem


multimap::insert (STL/CLR)

Dodaje elementy.

    iterator insert(value_type val);
    iterator insert(iterator where, value_type val);
    template<typename InIter>
        void insert(InIter first, InIter last);
    void insert(System::Collections::Generic::IEnumerable<value_type>^ right);

Parametry

  • pierwszy
    Początek zakresu do wstawienia.

  • ostatni
    Koniec zakresu do wstawienia.

  • prawo
    Wyliczenie do wstawienia.

  • Val
    Wartość klucza do wstawienia.

  • gdzie
    Gdzie w pojemniku do wstawienia (tylko wskazówka).

Uwagi

Wstawia każdej z funkcji elementów członkowskich sekwencji określony przez pozostałe operandy.

Pierwsza funkcja Członkowskie wstawia element o wartości vali zwraca iterację opisująca nowo wstawiony element.Umożliwia to wstawianie pojedynczego elementu.

Druga funkcja Członkowskie wstawia element o wartości val, z wykorzystaniem where jako wskazówkę (w celu zwiększenia wydajności) i zwraca iterację opisująca nowo wstawiony element.Umożliwia to wstawianie pojedynczego elementu, która może przylegać do elementu, które znasz.

Trzeci funkcji składowej wstawia sekwencji [first, last).Umożliwia to wstawianie zero lub więcej elementów, skopiowane z innej sekwencji.

Czwarty funkcji członka wstawia sekwencji wyznaczone przez right.Umożliwia ona Wstaw sekwencję opisaną przez moduł wyliczający.

Każdy element wstawiania wymaga czasu proporcjonalna do logarytmu liczby elementów w kontrolowanej sekwencji.Wstawiania może wystąpić w amortyzowane stały czas, jednakże, biorąc pod uwagę wskazówkę, która wyznacza element przyległych do punktu wstawiania.

Przykład

// cliext_multimap_insert.cpp 
// compile with: /clr 
#include <cliext/map> 
 
typedef cliext::multimap<wchar_t, int> Mymultimap; 
int main() 
    { 
    Mymultimap c1; 
    c1.insert(Mymultimap::make_value(L'a', 1)); 
    c1.insert(Mymultimap::make_value(L'b', 2)); 
    c1.insert(Mymultimap::make_value(L'c', 3)); 
 
// display contents " [a 1] [b 2] [c 3]" 
    for each (Mymultimap::value_type elem in c1) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// insert a single value, unique and duplicate 
    Mymultimap::iterator it = 
        c1.insert(Mymultimap::make_value(L'x', 24)); 
    System::Console::WriteLine("insert([L'x' 24]) = [{0} {1}]", 
        it->first, it->second); 
 
    it = c1.insert(Mymultimap::make_value(L'b', 2)); 
    System::Console::WriteLine("insert([L'b' 2]) = [{0} {1}]", 
        it->first, it->second); 
 
    for each (Mymultimap::value_type elem in c1) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// insert a single value with hint 
    it = c1.insert(c1.begin(), Mymultimap::make_value(L'y', 25)); 
    System::Console::WriteLine("insert(begin(), [L'y' 25]) = [{0} {1}]", 
        it->first, it->second); 
    for each (Mymultimap::value_type elem in c1) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// insert an iterator range 
    Mymultimap c2; 
    it = c1.end(); 
    c2.insert(c1.begin(), --it); 
    for each (Mymultimap::value_type elem in c2) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// insert an enumeration 
    Mymultimap c3; 
    c3.insert(   // NOTE: cast is not needed 
        (System::Collections::Generic:: 
            IEnumerable<Mymultimap::value_type>^)%c1); 
    for each (Mymultimap::value_type elem in c3) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Wymagania

Nagłówek:<cliext/map>

Przestrzeń nazw: cliext

Zobacz też

Informacje

multimap (STL/CLR)