std::multimap<Key,T,Compare,Allocator>::clear
Von cppreference.com
| void clear(); |
(noexcept seit C++11) | |
Löscht alle Elemente aus dem Container. Nach diesem Aufruf gibt size() null zurück.
Macht alle Referenzen, Zeiger und Iteratoren, die sich auf enthaltene Elemente beziehen, ungültig. Jeder past-the-end Iterator bleibt gültig.
Inhalt |
[bearbeiten] Komplexität
Linear in Bezug auf die Größe des Containers, d. h. die Anzahl der Elemente.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <iostream> #include <string_view> #include <map> void print_info(std::string_view rem, const std::multimap<int, char>& v) { std::cout << rem << "{ "; for (const auto& [key, value] : v) std::cout << '[' << key << "]:" << value << ' '; std::cout << "}\n"; std::cout << "Size=" << v.size() << '\n'; } int main() { std::multimap<int, char> container{{1, 'x'}, {2, 'y'}, {3, 'z'}}; print_info("Before clear: ", container); container.clear(); print_info("After clear: ", container); }
Ausgabe
Before clear: { [1]:x [2]:y [3]:z }
Size=3
After clear: { }
Size=0Defect reports
Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 224 | C++98 | die Komplexität war log(size()) + N, aber N war nicht definiert | korrigiert zu "linear in size()" |
[bearbeiten] Siehe auch
| entfernt Elemente (public member function) |