std::inplace_vector<T,N>::reserve
Von cppreference.com
< cpp | container | inplace vector
| static constexpr void reserve( size_type new_cap ); |
(seit C++26) | |
Tut nichts, außer dass möglicherweise std::bad_alloc ausgelöst wird. Die Anforderung, die Kapazität (d.h. die Größe des internen Speichers) zu erhöhen, wird ignoriert, da std::inplace_vector<T, N> ein Container mit fester Kapazität ist.
Inhalt |
[bearbeiten] Parameter
| new_cap | - | neue Kapazität des inplace_vector, in Anzahl der Elemente |
[bearbeiten] Rückgabewert
(keine)
[bearbeiten] Komplexität
Konstant.
[bearbeiten] Ausnahmen
std::bad_alloc, wenn new_cap > capacity() true ist.
[bearbeiten] Hinweise
Diese Funktion existiert zur Kompatibilität mit Vektor-ähnlichen Schnittstellen.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <cassert> #include <inplace_vector> #include <iostream> int main() { std::inplace_vector<int, 4> v{1, 2, 3}; assert(v.capacity() == 4 && v.size() == 3); v.reserve(2); // does nothing assert(v.capacity() == 4 && v.size() == 3); try { v.reserve(13); // throws, because requested capacity > N; v is left unchanged } catch(const std::bad_alloc& ex) { std::cout << ex.what() << '\n'; } assert(v.capacity() == 4 && v.size() == 3); }
Mögliche Ausgabe
std::bad_alloc
[bearbeiten] Siehe auch
| Gibt die Anzahl der Elemente zurück (public member function) | |
| [static] |
Gibt die maximal mögliche Anzahl von Elementen zurück (public static member function) |
| ändert die Anzahl der gespeicherten Elemente (public member function) | |
| [static] |
Gibt die Anzahl der Elemente zurück, die im derzeit zugewiesenen Speicher gehalten werden können (public static member function) |
| [static] |
reduziert den Speicherverbrauch durch Freigabe von ungenutztem Speicher (public static member function) |