std::inplace_vector<T,N>::reserve
Von de.cppreference.net
static constexpr void reserve( size_type new_cap );
|
(seit C++26) | |
Tut nichts, außer dass es std::bad_alloc werfen kann. Die Anfrage, die Kapazität (d. h. die interne Speichergröße) zu erhöhen, wird ignoriert, da std::inplace_vector<T, N> ein Behälter mit fester Kapazität ist.
Parameter
| new_cap | - |
neue Kapazität des
inplace_vector
, in Anzahl der Elemente
|
Komplexität
Konstante.
Ausnahmen
std::bad_alloc wenn new_cap > capacity ( ) ist true .
Hinweise
Diese Funktion existiert aus Kompatibilitätsgründen mit vektorähnlichen Schnittstellen.
Beispiel
Diesen Code ausführen
#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); // macht nichts assert(v.capacity() == 4 && v.size() == 3); try { v.reserve(13); // wirft Exception, weil angeforderte Kapazität > N; v bleibt unverändert } catch(const std::bad_alloc& ex) { std::cout << ex.what() << '\n'; } assert(v.capacity() == 4 && v.size() == 3); }
Mögliche Ausgabe:
std::bad_alloc
Siehe auch
|
gibt die Anzahl der Elemente zurück
(öffentliche Elementfunktion) |
|
|
[static]
|
gibt die maximal mögliche Anzahl von Elementen zurück
(öffentliche statische Elementfunktion) |
|
ändert die Anzahl der gespeicherten Elemente
(öffentliche Elementfunktion) |
|
|
[static]
|
gibt die Anzahl der Elemente zurück, die im aktuell allozierten Speicher Platz finden
(öffentliche statische Elementfunktion) |
|
[static]
|
reduziert die Speichernutzung durch Freigabe ungenutzten Speichers
(öffentliche statische Elementfunktion) |