Størrelsen af vektoren kan reduceres ved at bruge forskellige indbyggede funktioner i C++. Pop_back()-funktionen er en af dem. Det bruges til at fjerne det sidste element i vektoren fra bagsiden og reducere størrelsen af vektoren med 1. Men det sidste element i vektoren fjernes ikke permanent ligesom erase()-funktionen. De forskellige anvendelser af denne funktion er blevet forklaret i denne vejledning.
Syntaks:
vektor :: pop_back ( ) ;Denne funktion har ikke noget argument, og den returnerer intet.
Forudsætning:
Før du tjekker eksemplerne på denne tutorial, skal du kontrollere, at g++-kompileren er installeret eller ej i systemet. Hvis du bruger Visual Studio Code, skal du installere de nødvendige udvidelser for at kompilere C++-kildekoden for at skabe den eksekverbare kode. Her er Visual Studio Code-applikationen blevet brugt til at kompilere og udføre C++-koden. Måderne til at reducere størrelsen af vektoren ved hjælp af pop_back()-funktionen er vist i den næste del af denne vejledning.
Eksempel-1: Fjern flere elementer fra vektoren
Opret en C++-fil med følgende kode for at fjerne to elementer fra vektorbeholderen ved at reducere størrelsen af vektoren ved hjælp af pop_back()-funktionen. En vektor med 5 strengværdier er blevet erklæret i koden. Pop_back()-funktionen er blevet kaldt to gange her for at fjerne to sidste elementer fra vektoren midlertidigt og reducere størrelsen af vektoren med 2. Indholdet af vektoren er blevet udskrevet to gange før og efter brug af pop_back()-funktionen.
//Medtag nødvendige biblioteker
#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( ) {
//Erklære en vektor af strengværdier
vektor < snor > blomster = { 'Rose' , 'Lity' , 'Marigold' , 'Tulipan' , 'Vandløve' } ;
cout << 'Vektorens værdier: \n ' ;
//Iterér vektoren ved hjælp af loop til at udskrive værdierne
til ( int jeg = 0 ; jeg < blomster. størrelse ( ) ; ++ jeg )
cout << blomster [ jeg ] << ' ' ;
cout << ' \n ' ;
//Fjern de sidste to værdier fra vektoren
blomster. pop_back ( ) ;
blomster. pop_back ( ) ;
cout << ' \n Værdierne af vektoren efter fjernelse: \n ' ;
//Iterér vektoren ved hjælp af loop til at udskrive værdierne
til ( int jeg = 0 ; jeg < blomster. størrelse ( ) ; ++ jeg )
cout << blomster [ jeg ] << ' ' ;
cout << ' \n ' ;
Vend tilbage 0 ;
}
Produktion:
Følgende output vises efter udførelse af ovenstående kode.
Eksempel-2: Opret en ny vektor fra en anden vektor
Opret en C++-fil med følgende kode for at indsætte specifikke værdier i en tom vektor fra en anden vektor ved at fjerne elementerne ved hjælp af pop_back()-funktionen. En vektor med 8 heltal og en tom vektor af heltalstype er blevet erklæret i koden. ’While’-løkken er blevet brugt til at iterere hvert element i den første vektor og indsætte elementet i den nye vektor, hvis tallet er deleligt med 2. Summen af alle lige tal er også beregnet her. Hvert element i den første vektor vil blive fjernet af pop_back()-funktionen i hver iteration af sløjfen for at nå sløjfens afslutningstilstand.
//Medtag nødvendige biblioteker
#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
//Erklære en vektor af heltalsdata
vektor < int > intVector { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;
//Erklærer en tom vektor
vektor < int > nyVektor ;
cout << 'Værdierne af den oprindelige vektor: \n ' ;
//Iterér vektoren ved hjælp af loop til at udskrive værdierne
til ( int jeg = 0 ; jeg < intVector. størrelse ( ) ; ++ jeg )
cout << intVector [ jeg ] << ' ' ;
cout << ' \n ' ;
//Initialiser resultatet
int resultat = 0 ;
//Iterér løkken, indtil vektoren bliver tom
mens ( ! intVector. tom ( ) )
{
/*
Find ud af de lige tal, der skal indsættes i den nye vektor
og udregn summen af de lige tal
*/
hvis ( intVector. tilbage ( ) % 2 == 0 )
{
resultat + = intVector. tilbage ( ) ;
nyVektor. skub tilbage ( intVector. tilbage ( ) ) ;
}
//Fjern element fra slutningen af intVactor
intVector. pop_back ( ) ;
}
cout << 'Værdierne af den nye vektor: \n ' ;
//Iterér vektoren ved hjælp af loop til at udskrive værdierne
til ( int jeg = 0 ; jeg < nyVektor. størrelse ( ) ; ++ jeg )
cout << nyVektor [ jeg ] << ' ' ;
cout << ' \n ' ;
cout << 'Summen af alle lige tal:' << resultat << ' \n ' ;
Vend tilbage 0 ;
}
Produktion:
Følgende output vises efter udførelse af ovenstående kode. Der var tre lige tal i den første vektor. Der er 8, 2 og 4.
Eksempel-3: Tjek, at det sidste element i vektoren er fjernet eller ej
Det er nævnt tidligere, at pop_back() ikke fjerner elementerne permanent fra vektoren, og det fjerner elementet ved kun at reducere størrelsen af vektoren. Så det fjernede element forbliver i samme position, indtil vektorens størrelse øges og erstatter elementet med et andet element. Opret en C++-fil med følgende kode for at kontrollere, at det element, der blev fjernet af pop_back()-funktionen, eksisterer eller ej. Den sidste position af den originale vektor er blevet udskrevet før og efter brug af pop_back()-funktionen.
#include#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
//Erklære en vektor af heltalsdata
vektor < int > intVector { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;
//Erklærer en tom vektor
vektor < int > nyVektor ;
//Deklarer en heltalsvariabel
int længde ;
//Udskriv det sidste element baseret på størrelsen af vektoren
længde = intVector. størrelse ( ) ;
cout << 'Den aktuelle størrelse af vektoren:' << længde << ' \n ' ;
cout << 'Den sidste værdi af vektoren før fjernelse:' << intVector [ længde - 1 ] << ' \n ' ;
//Fjern elementet fra slutningen af vektoren
intVector. pop_back ( ) ;
//Udskriv det sidste element baseret på størrelsen af vektoren efter fjernelse
længde = intVector. størrelse ( ) ;
cout << 'Den aktuelle størrelse af vektoren:' << længde << ' \n ' ;
cout << 'Den sidste værdi af vektoren efter fjernelse:' << intVector [ længde ] << ' \n ' ;
Vend tilbage 0 ;
}
Produktion:
Følgende output vises efter udførelse af ovenstående kode. Outputtet viser, at vektorens størrelse er reduceret med 1, men elementet i den sidste position af den oprindelige vektor eksisterer stadig.
Konklusion:
Tre forskellige anvendelser af pop_back()-funktionen er blevet beskrevet i denne vejledning ved hjælp af simple eksempler. Hovedformålet med at bruge denne funktion vil blive ryddet for læserne efter at have øvet eksemplerne i denne vejledning.