Funzione Cancella vettore() in C++

Funzione Cancella Vettore In C



L'array viene utilizzato per archiviare più dati e il numero di elementi dell'array non può essere modificato in fase di esecuzione. Questo problema può essere risolto utilizzando un vettore che funziona come un array dinamico. Esistono diverse funzioni nella classe vettore per aggiungere e rimuovere un elemento dal vettore. La funzione erase() viene utilizzata per rimuovere uno o più elementi dal vettore in fase di esecuzione riducendo la dimensione del vettore. Gli usi di questa funzione sono stati spiegati in questo tutorial.

Sintassi:

Di seguito sono riportati due tipi di sintassi di questa funzione.







cancellazione dell'iteratore ( posizione dell'iteratore ) ;

La funzione erase() di cui sopra viene utilizzata per rimuovere un singolo elemento dal vettore e restituisce un iteratore e punta all'elemento seguito dall'ultimo elemento cancellato.



cancellazione dell'iteratore ( posizione_iniziale dell'iteratore, posizione_finale dell'iteratore ) ;

La funzione cancella() sopra viene utilizzata per rimuovere più elementi dal vettore in base alla posizione menzionata nel primo e nel secondo argomento di questa funzione.



Prerequisito:

Prima di controllare gli esempi di questo tutorial, devi verificare che il compilatore g++ sia installato o meno nel sistema. Se utilizzi Visual Studio Code, installa le estensioni necessarie per compilare il codice sorgente C++ per creare il codice eseguibile. In questo caso è stata utilizzata l'applicazione Visual Studio Code per compilare ed eseguire il codice C++. Di seguito sono mostrati diversi usi della funzione erase() per inserire elementi in un vettore.





Esempio 1: rimuovere il primo elemento elemento

Crea un file C++ con il codice seguente per rimuovere un elemento dall'inizio del vettore. Nel codice è stato utilizzato un vettore di valori stringa. I valori del vettore sono stati stampati prima e dopo l'eliminazione del primo elemento dal vettore utilizzando la funzione cancella() con un parametro.

//Includi le librerie necessarie

#include

#include

utilizzando spazio dei nomi standard ;

//Visualizza i valori del vettore

vuoto display_vettore ( vettore < corda > frutta )

{

//Inizializza il contatore

int contatore = 1 ;

//Itera e stampa gli elementi del vettore usando loop

per ( auto Lui = frutta. inizio ( ) ; Lui ! = frutta. FINE ( ) ; Lui ++ )

{

//Verifica che gli elementi siano l'ultimo elemento o meno

Se ( contatore ! = frutta. misurare ( ) )

cout << * Lui << ', ' ;

altro

cout << * Lui ;

//Incrementa il contatore di 1

contatore ++ ;

}

cout << fine ;

}

int principale ( vuoto ) {

//Dichiara un vettore di dati stringa

vettore < corda > frutta = { 'Arancia' , 'Banana' , 'Mango' , 'Jackfrutto' , Litchi } ;

//Stampa i valori esistenti del vettore

cout << 'I valori del vettore prima della rimozione: ' << fine ;

display_vettore ( frutta ) ;

//Rimuove il primo elemento dal vettore

frutta. cancellare ( frutta. inizio ( ) ) ;

//Stampa i valori esistenti del vettore dopo la rimozione

cout << ' \N I valori del vettore dopo la rimozione: ' << fine ;

display_vettore ( frutta ) ;

ritorno 0 ;

}

Produzione:

Il seguente output apparirà dopo aver eseguito il codice sopra.



Esempio 2: rimuovere più elementi

Crea un file C++ con il seguente codice per rimuovere più elementi dal vettore utilizzando la funzione cancella(). Nel codice è stato utilizzato un vettore di valori interi. Qui sono stati utilizzati due iteratori per impostare l'intervallo di elementi rimossi dal vettore. La funzione erase() è stata utilizzata con due parametri per rimuovere più elementi dal vettore.

//Includi le librerie necessarie

#include

#include

utilizzando spazio dei nomi standard ;

//Visualizza il vettore

vuoto display_vettore ( vettore < int > numeri )

{

//Stampa i valori del vettore usando loop

per ( auto Lui = numeri. inizio ( ) ; Lui ! = numeri. FINE ( ) ; Lui ++ )

cout << * Lui << ' ' ;

//Aggiungi una nuova riga

cout << ' \N ' ;

}

int principale ( ) {

//Dichiara un vettore di dati interi

vettore < int > intArray { 678 , 435 , 960 , 231 , 800 , 387 , 634 , 267 , 409 , 294 } ;

//Stampa i valori esistenti del vettore

cout << 'I valori del vettore prima della rimozione: ' << fine ;

display_vettore ( intArray ) ;

//Dichiara due iteratori per rimuovere l'intervallo di elementi dal vettore

vettore < int > :: iteratore inizioEle, fineEle ;

//Imposta l'iteratore sulla prima posizione

avviarli = intArray. inizio ( ) ;

//Incrementa l'iteratore iniziale di 2

avanzare ( iniziarli, 2 ) ;

//Imposta l'iteratore all'ultima posizione

fineEle = intArray. FINE ( ) ;

//Decrementa l'iteratore finale di 3

avanzare ( fineEle, - 3 ) ;

//Rimuove l'intervallo di elementi

intArray. cancellare ( inizioEle, fineEle ) ;

//Stampa i valori esistenti del vettore dopo la rimozione

cout << ' \N I valori del vettore dopo la rimozione: ' << fine ;

display_vettore ( intArray ) ;

ritorno 0 ;

}

Produzione:

Il seguente output apparirà dopo aver eseguito il codice sopra. A seconda dell'intervallo degli iteratori, gli elementi dalla 3a posizione alla 7a posizione del vettore sono stati rimossi.

Esempio 3: rimuovere gli elementi specifici

Crea un file C++ con il seguente codice per rimuovere gli elementi specifici del vettore utilizzando la funzione cancella(). Nel codice è stato dichiarato un vettore di 7 elementi interi. Successivamente, il ciclo 'for' è utilizzato per ripetere gli elementi del vettore e rimuovere quegli elementi dal vettore che non sono divisibili per 5.

//Includi le librerie necessarie

#include

#include

utilizzando spazio dei nomi standard ;

int principale ( )

{

//Dichiara un vettore di dati interi

vettore < int > numeri = { 78 , Quattro cinque , 67 , 25 , 98 , 75 , 52 } ;

cout << 'I valori del vettore prima della rimozione: \N ' ;

per ( int cost & io : numeri ) {

cout << io << ' ' ;

}

cout << fine ;

//Rimuove dal vettore i numeri che non sono divisibili per 5

per ( auto Lui = numeri. inizio ( ) ; Lui ! = numeri. FINE ( ) ; Lui ++ )

{

//Verifica che il numero sia divisibile per 5 o meno

Se ( * Lui % 5 ! = 0 )

{

//Rimuove l'elemento in base all'iteratore

numeri. cancellare ( Lui -- ) ;

}

}

cout << 'I valori del vettore dopo la rimozione: \N ' ;

per ( int cost & io : numeri ) {

cout << io << ' ' ;


}


cout << fine ;


ritorno 0 ;

}

Produzione:

Il seguente output apparirà dopo aver eseguito il codice sopra. L'output mostra che il vettore contiene solo elementi divisibili per 5 e altri elementi sono stati rimossi.

Conclusione:

In questo tutorial sono stati mostrati diversi usi della funzione cancella() per rimuovere elementi vettoriali. Il C++ ha molte altre funzioni per rimuovere l'elemento dal vettore e tali funzioni possono rimuovere il singolo elemento alla volta. Ma sia gli elementi singoli che quelli multipli da qualsiasi posizione del vettore possono essere rimossi utilizzando la funzione vector erase().