std::flat_multiset<Key,Compare,KeyContainer>::insert
Von cppreference.com
< cpp | container | flat multiset
| iterator insert( const value_type& value ) |
(1) | (seit C++23) |
| iterator einfügen( value_type&& value ); |
(2) | (seit C++23) |
| iterator insert( const_iterator pos, const value_type& value ); |
(3) | (seit C++23) |
| iterator insert( const_iterator pos, value_type&& value ); |
(4) | (seit C++23) |
| template< class InputIt > void einfügen( InputIt first, InputIt last ); |
(5) | (seit C++23) |
| template< class InputIt > void insert( std::sorted_equivalent_t, InputIt first, InputIt last ); |
(6) | (seit C++23) |
| void insert( std::initializer_list<key_type> ilist ); |
(7) | (seit C++23) |
| void insert( std::sorted_equivalent_t s, std::initializer_list<key_type> ilist ); |
(8) | (seit C++23) |
Fügt Element(e) in den Container ein. Die Reihenfolge der verbleibenden äquivalenten Elemente bleibt erhalten.
1) Fügt value ein. Wenn der Container Elemente mit einem äquivalenten Schlüssel hat, wird am oberen Ende dieses Bereichs eingefügt. Entspricht return emplace(value);.
2) Fügt value ein. Wenn der Container Elemente mit einem äquivalenten Schlüssel hat, wird am oberen Ende dieses Bereichs eingefügt. Entspricht return emplace(std::move(value));.
3) Fügt value an einer Position ein, die so nah wie möglich an der Position direkt vor pos liegt. Äquivalent zu return emplace_hint(pos, value);.
4) Fügt value an einer Position ein, die so nah wie möglich an der Position direkt vor pos liegt. Äquivalent zu return emplace_hint(pos, std::move(value));.
5) Fügt Elemente aus dem Bereich
[first, last) ein, als ob die folgenden Operationen sequenziell ausgeführt würden.- Fügt Elemente zu
chinzu, als ob dies durch c.insert(c.end(), first, last); erfolgen würde. - Sortiert den Bereich der neu eingefügten Elemente in Bezug auf
compare. - Führt den resultierenden sortierten Bereich und den sortierten Bereich der bereits vorhandenen Elemente zu einem einzigen sortierten Bereich zusammen.
Kann während der In-Place-Merge-Phase Speicher allozieren.
6) Fügt Elemente aus dem Bereich
[first, last) ein. Entspricht insert(first, last);.7) Fügt Elemente aus der Initialisierungsliste ilist ein. Entspricht insert(ilist.begin(), ilist.end());.
8) Fügt Elemente aus der Initialisierungsliste ilist ein. Entspricht insert(s, ilist.begin(), ilist.end());.
| Informationen zur Iterator-Invalidierung sind von hier kopiert. |
Inhalt |
[bearbeiten] Parameter
| pos | - | Iterator zu der Position, vor der das neue Element eingefügt wird |
| value | - | Elementwert, der eingefügt werden soll |
| first, last | - | das Iteratorenpaar, das den Quell- Bereich der einzufügenden Elemente definiert |
| ilist | - | Initialisierungsliste, aus der die Werte eingefügt werden sollen |
| s | - | Ein Disambiguierungs-Tag, der angibt, dass die Eingabesequenz sortiert ist (in Bezug auf key_compare) |
| Typanforderungen | ||
-InputIt muss die Anforderungen von LegacyInputIterator erfüllen. | ||
[bearbeiten] Rückgabewert
1-4) Ein Iterator zum eingefügten Element.
5-8) (keine)
[bearbeiten] Ausnahmen
1-4) Hängt vom zugrundeliegenden Container ab.
5-8) Keine Garantie für die Ausnahme-Sicherheit.
| Dieser Abschnitt ist unvollständig Grund: Ausnahme-Garantien 1..8 |
[bearbeiten] Komplexität
1-4) Linear.
6) Linear.
8) Linear.
| Dieser Abschnitt ist unvollständig Grund: Komplexität erneut prüfen: 1-4, 8 |
[bearbeiten] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |
[bearbeiten] Siehe auch
| konstruiert Elemente direkt (in-place) (public member function) | |
| konstruiert Elemente "in place" unter Verwendung eines Hinweises (public member function) | |
| erstellt einen std::insert_iterator vom Typ, der aus dem Argument abgeleitet wird (Funktionsvorlage) |