std::inplace_vector<T,N>:: resize
From cppreference.net
<
cpp
|
container
|
inplace vector
|
constexpr
void
resize
(
size_type count
)
;
|
(1) | (depuis C++26) |
|
constexpr
void
resize
(
size_type count,
const
value_type
&
value
)
;
|
(2) | (depuis C++26) |
Redimensionne le conteneur pour contenir count éléments :
- Si count est égal à la taille actuelle, ne fait rien.
- Si la taille actuelle est supérieure à count , le conteneur est réduit à ses premiers count éléments.
- Si la taille actuelle est inférieure à count , alors :
1)
Des éléments supplémentaires
default-inserted
sont ajoutés.
2)
Des copies supplémentaires de
value
sont ajoutées.
Table des matières |
Paramètres
| count | - | nouvelle taille du conteneur |
| value | - | la valeur pour initialiser les nouveaux éléments |
| Exigences de type | ||
|
-
|
||
Complexité
Linéaire dans la différence entre la taille actuelle et count .
Exceptions
Si une exception est levée pour quelque raison que ce soit, ces fonctions n'ont aucun effet ( strong exception safety guarantee ).
Exemple
Exécuter ce code
#include <inplace_vector> #include <print> int main() { std::inplace_vector<int, 6> v(6, 9); std::println("Initialement, v = {}", v); v.resize(2); std::println("Après resize(2), v = {}", v); v.resize(4); std::println("Après resize(4), v = {}", v); v.resize(6, -1); std::println("Après resize(6, -1), v = {}", v); try { std::print("Tentative de resize(13) : "); v.resize(13); // lève une exception car count > N ; v reste inchangé } catch(const std::bad_alloc& ex) { std::println("ex.what() : {}", ex.what()); } std::println("Après l'exception, v = {}", v); }
Sortie possible :
Initialement, v = [9, 9, 9, 9, 9, 9] Après resize(2), v = [9, 9] Après resize(4), v = [9, 9, 0, 0] Après resize(6, -1), v = [9, 9, 0, 0, -1, -1] Tentative de resize(13) : ex.what() : std::bad_alloc Après l'exception, v = [9, 9, 0, 0, -1, -1]
Voir aussi
|
[static]
|
retourne le nombre maximum possible d'éléments
(fonction membre publique statique) |
|
retourne le nombre d'éléments
(fonction membre publique) |
|
|
[static]
|
retourne le nombre d'éléments pouvant être contenus dans le stockage actuellement alloué
(fonction membre publique statique) |
|
vérifie si le conteneur est vide
(fonction membre publique) |