Freigeben über


deque::insert (STL/CLR)

Fügt Elemente an einer angegebenen Position hinzu.

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

Parameter

  • count
    Anzahl von Elementen eingefügt werden soll.

  • first
    Starten des Bereichs eingefügt werden soll.

  • last
    Ende des Bereichs eingefügt werden soll.

  • right
    Das einzufügende Enumeration.

  • val
    Der Wert des Elements eingefügt werden soll.

  • deinen
    Wenn Sie zuvor im Container eingefügt werden sollen.

Hinweise

Jede der Memberfunktionen wird, vor dem Element ein, das von where in der kontrollierten Sequenz eine Sequenz dargestellt wird, die durch die verbleibenden Operanden angegeben wird.

Die erste Memberfunktion wird ein Element mit val-Wert ein und gibt einen Iterator zurück, der das neu eingefügte Element festlegt.Sie verwenden sie, um ein einzelnes Element vor einer Stelle eingefügt, der durch einen Iterator festgelegt ist.

Die zweite Memberfunktion fügt eine Wiederholung von count-Elementen des Werts val ein.Sie verwenden sie, um keines oder einzufügen zusammenhängendere Elemente, die alle Kopien desselben Werts sind.

Wenn InIt ein Integer-Typ ist, verhält sich genauso wie die dritte Memberfunktion insert(where, (size_type)first, (value_type)last).Andernfalls werden die Sequenz [first,last) ein.Sie verwenden sie, um die keine oder einzufügen zusammenhängenderen kopierten Elemente aus einer anderen Sequenz.

Die vierte Memberfunktion fügt die Sequenz ein, die von right festgelegt ist.Sie verwenden sie, um eine Sequenz eingefügt werden, die von einem Enumerator beschrieben wird.

Wenn sie ein einzelnes Element einfügt, ist die Anzahl von Kopien Element als Anzahl von Elementen zwischen der Einfügemarke und dem näheren Ende der Sequenz linear.(Wenn eine oder mehrere Elemente an jedem Ende der Sequenz eingefügt haben, treten keine Kopien Element) auf. Wenn InIt ein Eingabeiterator ist, wird die dritte Memberfunktion letztendlich eine einzelne Einfügung für jedes Element in der Sequenz aus.Andernfalls, wenn sie N-Elemente einfügt, ist die Anzahl von Kopien Element in N plus die Anzahl von Elementen zwischen der Einfügemarke und dem näheren Ende der Sequenz linear.

Beispiel

// cliext_deque_insert.cpp 
// compile with: /clr 
#include <cliext/deque> 
 
int main() 
    { 
    cliext::deque<wchar_t> c1; 
    c1.push_back(L'a'); 
    c1.push_back(L'b'); 
    c1.push_back(L'c'); 
 
// display initial contents " a b c" 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert a single value using iterator 
    cliext::deque<wchar_t>::iterator it = c1.begin(); 
    System::Console::WriteLine("insert(begin()+1, L'x') = {0}", 
        *c1.insert(++it, L'x')); 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert a repetition of values 
    cliext::deque<wchar_t> c2; 
    c2.insert(c2.begin(), 2, L'y'); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert an iterator range 
    it = c1.end(); 
    c2.insert(c2.end(), c1.begin(), --it); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert an enumeration 
    c2.insert(c2.begin(),   // NOTE: cast is not needed 
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c1); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Anforderungen

Header: <cliext/Doppelschlange>

Namespace: cliext

Siehe auch

Referenz

deque (STL/CLR)

deque::assign (STL/CLR)