Veličina vektora može se smanjiti korištenjem različitih ugrađenih funkcija C++-a. Funkcija pop_back() jedna je od njih. Koristi se za uklanjanje zadnjeg elementa vektora sa stražnje strane i smanjenje veličine vektora za 1. Ali posljednji element vektora ne uklanja se trajno kao funkcija erase(). Različite upotrebe ove funkcije objašnjene su u ovom vodiču.
Sintaksa:
vektor :: pop_back ( ) ;Ova funkcija nema nijedan argument i ništa ne vraća.
Preduvjet:
Prije provjere primjera ovog vodiča, morate provjeriti je li g++ prevodilac instaliran ili ne u sustavu. Ako koristite Visual Studio Code, tada instalirajte potrebna proširenja za kompajliranje C++ izvornog koda za stvaranje izvršnog koda. Ovdje je korištena aplikacija Visual Studio Code za kompajliranje i izvođenje C++ koda. Načini smanjenja veličine vektora pomoću funkcije pop_back() prikazani su u sljedećem dijelu ovog vodiča.
Primjer-1: Uklonite više elemenata iz vektora
Stvorite C++ datoteku sa sljedećim kodom za uklanjanje dva elementa iz vektorskog spremnika smanjenjem veličine vektora pomoću funkcije pop_back(). U kodu je deklariran vektor od 5 vrijednosti niza. Funkcija pop_back() ovdje je pozvana dva puta kako bi se privremeno uklonila dva zadnja elementa iz vektora i smanjila veličina vektora za 2. Sadržaj vektora ispisan je dva puta prije i nakon upotrebe funkcije pop_back().
//Uključi potrebne biblioteke
#include
#uključi
korištenjem imenski prostor std ;
int glavni ( ) {
//Deklarirajte vektor vrijednosti niza
vektor < niz > cvijeće = { 'Ruža' , 'Lity' , 'Neven' , 'Lala' , 'Vodeni lav' } ;
cout << 'Vrijednosti vektora: \n ' ;
//Ponavljanje vektora pomoću petlje za ispis vrijednosti
za ( int ja = 0 ; ja < cvijeće. veličina ( ) ; ++ ja )
cout << cvijeće [ ja ] << ' ' ;
cout << ' \n ' ;
//Ukloni posljednje dvije vrijednosti iz vektora
cvijeće. pop_back ( ) ;
cvijeće. pop_back ( ) ;
cout << ' \n Vrijednosti vektora nakon uklanjanja: \n ' ;
//Ponavljanje vektora pomoću petlje za ispis vrijednosti
za ( int ja = 0 ; ja < cvijeće. veličina ( ) ; ++ ja )
cout << cvijeće [ ja ] << ' ' ;
cout << ' \n ' ;
povratak 0 ;
}
Izlaz:
Nakon izvršavanja gornjeg koda pojavit će se sljedeći izlaz.
Primjer-2: Stvorite novi vektor iz drugog vektora
Stvorite C++ datoteku sa sljedećim kodom za umetanje određenih vrijednosti u prazan vektor iz drugog vektora uklanjanjem elemenata pomoću funkcije pop_back(). U kodu je deklariran vektor od 8 cijelih brojeva i prazan vektor cjelobrojnog tipa. Petlja 'while' korištena je za ponavljanje svakog elementa prvog vektora i umetanje elementa u novi vektor ako je broj djeljiv s 2. Ovdje je također izračunat zbroj svih parnih brojeva. Svaki element prvog vektora bit će uklonjen pomoću funkcije pop_back() u svakoj iteraciji petlje kako bi se postigao uvjet završetka petlje.
//Uključi potrebne biblioteke
#include
#uključi
korištenjem imenski prostor std ;
int glavni ( )
{
//Deklarirajte vektor cjelobrojnih podataka
vektor < int > intVektor { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;
//Deklarišemo prazan vektor
vektor < int > noviVektor ;
cout << 'Vrijednosti izvornog vektora: \n ' ;
//Ponavljanje vektora pomoću petlje za ispis vrijednosti
za ( int ja = 0 ; ja < intVektor. veličina ( ) ; ++ ja )
cout << intVektor [ ja ] << ' ' ;
cout << ' \n ' ;
//Inicijaliziraj rezultat
int proizlaziti = 0 ;
//Ponavljajte petlju dok vektor ne postane prazan
dok ( ! intVektor. prazan ( ) )
{
/*
Pronađite parne brojeve za umetanje u novi vektor
te izračunati zbroj parnih brojeva
*/
ako ( intVektor. leđa ( ) % 2 == 0 )
{
proizlaziti + = intVektor. leđa ( ) ;
noviVektor. odgurnuti ( intVektor. leđa ( ) ) ;
}
//Ukloni element s kraja intVactora
intVektor. pop_back ( ) ;
}
cout << 'Vrijednosti novog vektora: \n ' ;
//Ponavljanje vektora pomoću petlje za ispis vrijednosti
za ( int ja = 0 ; ja < noviVektor. veličina ( ) ; ++ ja )
cout << noviVektor [ ja ] << ' ' ;
cout << ' \n ' ;
cout << 'Zbroj svih parnih brojeva: ' << proizlaziti << ' \n ' ;
povratak 0 ;
}
Izlaz:
Nakon izvršavanja gornjeg koda pojavit će se sljedeći izlaz. U prvom vektoru bila su tri parna broja. Ima ih 8, 2 i 4.
Primjer-3: Provjerite je li zadnji element vektora uklonjen ili ne
Ranije je spomenuto da pop_back() ne uklanja elemente trajno iz vektora, te uklanja element samo smanjenjem veličine vektora. Dakle, uklonjeni element ostaje na istoj poziciji sve dok se veličina vektora ne poveća i zamijeni element drugim elementom. Napravite C++ datoteku sa sljedećim kodom da biste provjerili postoji li element uklonjen funkcijom pop_back(). Posljednji položaj izvornog vektora ispisan je prije i nakon korištenja funkcije pop_back().
#include#uključi
korištenjem imenski prostor std ;
int glavni ( )
{
//Deklarirajte vektor cjelobrojnih podataka
vektor < int > intVektor { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;
//Deklarišemo prazan vektor
vektor < int > noviVektor ;
//Deklarirajte cjelobrojnu varijablu
int duljina ;
//Ispis zadnjeg elementa na temelju veličine vektora
duljina = intVektor. veličina ( ) ;
cout << 'Trenutna veličina vektora:' << duljina << ' \n ' ;
cout << 'Posljednja vrijednost vektora prije uklanjanja:' << intVektor [ duljina - 1 ] << ' \n ' ;
//Uklanjanje elementa s kraja vektora
intVektor. pop_back ( ) ;
//Ispiši zadnji element na temelju veličine vektora nakon uklanjanja
duljina = intVektor. veličina ( ) ;
cout << 'Trenutna veličina vektora:' << duljina << ' \n ' ;
cout << 'Posljednja vrijednost vektora nakon uklanjanja:' << intVektor [ duljina ] << ' \n ' ;
povratak 0 ;
}
Izlaz:
Nakon izvršavanja gornjeg koda pojavit će se sljedeći izlaz. Izlaz pokazuje da je veličina vektora smanjena za 1, ali element posljednjeg položaja originalnog vektora još uvijek postoji.
Zaključak:
Tri različite upotrebe funkcije pop_back() opisane su u ovom vodiču pomoću jednostavnih primjera. Glavna svrha korištenja ove funkcije bit će razjašnjena čitateljima nakon uvježbavanja primjera iz ovog vodiča.