English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Corso di base C++

Controllo di flusso C++

Funzioni in C++

Array e stringhe C++

Strutture dati C++

Classi e oggetti C++

Puntatori in C++

Ereditarietà in C++

Corso STL in C++

Manuale di riferimento C++

Uso e esempio di C++ List resize()

List (elenco) in C++

La funzione resize() di C++ List cambia la dimensione del contenitore della lista.

Le condizioni sono le seguenti:

Se n è minore della dimensione attuale del contenitore, il contenitore della lista viene ridotto a n elementi e vengono eliminati tutti gli elementi estesi per n spazi.

Se n è maggiore della dimensione attuale del contenitore, la dimensione del contenitore aumenta e è possibile inserire più elementi nello spazio esteso.

Sintassi

void resize(size_type n, value_type val)

Parametro

n:È la nuova dimensione del contenitore.

 val:È il valore da inserire nella lista ricompilata.

Valore di ritorno

Non restituisce alcun valore.

Esempio 1

Vediamo un semplice esempio in cui n è minore della dimensione attuale del contenitore.

#include <iostream>
#include<list>
using namespace std;
int main()
{
  list<int> li={1,2,3,4,5};
  
  std::cout << "El contenuto della lista li è:\
  for(itr=li.begin();itr!=li.end();++itr)
  cout<<*itr<<",";
  li.resize(3);
  cout<<'\n';
  std::cout << "Dopo l'adattamento della dimensione, il contenuto della lista li è: " << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
   cout<<*itr<<",";
    return 0;
}

Output:

Il contenuto della lista li è:
1,2,3,4,5
Dopo l'adattamento della dimensione, il contenuto della lista li è:
1,2,3

In questo esempio, la funzione resize() riduce la dimensione del contenitore della lista di 2. Pertanto, gli ultimi due elementi della lista sono stati eliminati e l'output diventa 1,2,3.

Esempio 2

Vediamo un semplice esempio in cui n è maggiore della dimensione attuale del contenitore.

#include <iostream>
#include<list>
using namespace std;
int main()
{
  list<int> li={10,20,30,40};
  
  std::cout << "El contenuto della lista li è:\
  for(itr=li.begin();itr!=li.end();++itr)
  cout<<*itr<<",";
  li.resize(7,50);
  cout<<'\n';
  std::cout << "Dopo l'adattamento della dimensione, il contenuto della lista li è: " << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
   cout<<*itr<<",";
    return 0;
}

Output:

Il contenuto della lista li è:
10,20,30,40
Dopo l'adattamento della dimensione, il contenuto della lista li è:
10,20,30,40,50,50,50

In questo esempio, la funzione resize() aumenta la dimensione della lista di 3 e inserisce l'elemento nuovo (cioè 50) nella lista ricompilata.

List (elenco) in C++