Veličina vektora može se smanjiti korištenjem različitih ugrađenih funkcija C ++. Funkcija pop_back () jedna je od njih. Koristi se za uklanjanje posljednjeg elementa vektora sa stražnje strane i smanjenje veličine vektora za 1. No, posljednji element vektora ne uklanja se trajno poput funkcije erase (). Različite uporabe ove funkcije objašnjene su u ovom vodiču.
Sintaksa:
vektor::pop_back();Ova funkcija nema nikakav argument i ne vraća ništa.
Preduvjet:
Prije nego provjerite primjere ovog vodiča, morate provjeriti je li g ++ kompajler instaliran ili nije u sustavu. Ako koristite Visual Studio Code, instalirajte potrebna proširenja za sastavljanje izvornog koda C ++ za stvaranje izvršnog koda. Ovdje se aplikacija Visual Studio Code koristila za sastavljanje i izvršavanje koda C ++. 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
Napravite 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 string vrijednosti. Ovdje je dva puta pozvana funkcija pop_back () radi privremenog uklanjanja dva posljednja elementa iz vektora i smanjenja veličine vektora za 2. Sadržaj vektora je ispisan dva puta prije i nakon korištenja funkcije pop_back ().
// Uključuje potrebne knjižnice
#uključi
#uključi
koristeći imenski prostorsati;
intglavni() {
// Deklariramo vektor string vrijednosti
vektor<niz>cvijeće= {'Ruža','Laž','Neven','Lala','Voda Liiy'};
trošak << 'Vrijednosti vektora: n';
// Iteracija vektora pomoću petlje za ispis vrijednosti
za(inti= 0;i<cvijeće.veličina(); ++i)
trošak <<cvijeće[i] << '';
trošak << ' n';
// Ukloniti posljednje dvije vrijednosti iz vektora
cvijeće.pop_back();
cvijeće.pop_back();
trošak << ' nVrijednosti vektora nakon uklanjanja: n';
// Iteracija vektora pomoću petlje za ispis vrijednosti
za(inti= 0;i<cvijeće.veličina(); ++i)
trošak <<cvijeće[i] << '';
trošak << ' n';
povratak 0;
}
Izlaz:
Sljedeći izlaz će se pojaviti nakon izvršavanja gornjeg koda.
Primjer 2: Izradite novi vektor iz drugog vektora
Napravite C ++ datoteku sa sljedećim kodom da biste umetnuli određene 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 cijelog broja. 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 uklonit će funkcija pop_back () u svakoj iteraciji petlje kako bi se postigao uvjet završetka petlje.
// Uključuje potrebne knjižnice
#uključi
#uključi
koristeći imenski prostorsati;
intglavni()
{
// Proglašavamo vektor cjelobrojnih podataka
vektor<int>intVector{ 5,9,4,7,2,8,1,3 };
// Proglasi prazan vektor
vektor<int>newVector;
trošak << 'Vrijednosti izvornog vektora: n';
// Iteracija vektora pomoću petlje za ispis vrijednosti
za(inti= 0;i<intVector.veličina(); ++i)
trošak <<intVector[i] << '';
trošak << ' n';
// Inicijalizacija rezultata
intproizlaziti= 0;
// Ponavljajte petlju sve dok vektor ne postane prazan
dok(!intVector.prazan())
{
/ *
Saznajte parne brojeve za umetanje u newVector
i izračunati zbroj parnih brojeva
* /
ako (intVector.leđa() % 2 == 0)
{
proizlaziti+=intVector.leđa();
newVector.odgurnuti(intVector.leđa());
}
// Uklonite element s kraja intVactor -a
intVector.pop_back();
}
trošak << 'Vrijednosti novog vektora: n';
// Iteracija vektora pomoću petlje za ispis vrijednosti
za(inti= 0;i<newVector.veličina(); ++i)
trošak <<newVector[i] << '';
trošak << ' n';
trošak << 'Zbroj svih parnih brojeva:' <<proizlaziti<< ' n';
povratak 0;
}
Izlaz:
Sljedeći izlaz će se pojaviti nakon izvršavanja gornjeg koda. U prvom vektoru bila su tri parna broja. Ima ih 8, 2 i 4.
Primjer-3: Provjerite je li zadnji element vektora uklonjen ili nije
Ranije je spomenuto da pop_back () ne uklanja elemente trajno iz vektora, a uklanja element smanjenjem samo veličine vektora. Dakle, uklonjeni element ostaje u istom položaju sve dok se veličina vektora ne poveća i zamijeni element drugim elementom. Napravite C ++ datoteku sa sljedećim kodom kako biste provjerili postoji li element uklonjen funkcijom pop_back (). Posljednja pozicija izvornog vektora ispisana je prije i nakon korištenja funkcije pop_back ().
#uključi#uključi
koristeći imenski prostorsati;
intglavni()
{
// Proglašavamo vektor cjelobrojnih podataka
vektor<int>intVector{ 54,19,46,72,22,83,10,53 };
// Proglasi prazan vektor
vektor<int>newVector;
// Deklarirati cjelobrojnu varijablu
intduljina;
// Ispis posljednjeg elementa na temelju veličine vektora
duljina=intVector.veličina();
trošak << 'Trenutna veličina vektora:' <<duljina<< ' n';
trošak << 'Zadnja vrijednost vektora prije uklanjanja:' <<intVector[duljina-1] << ' n';
// Uklonite element s kraja vektora
intVector.pop_back();
// Ispis posljednjeg elementa na temelju veličine vektora nakon uklanjanja
duljina=intVector.veličina();
trošak << 'Trenutna veličina vektora:' <<duljina<< ' n';
trošak << 'Posljednja vrijednost vektora nakon uklanjanja:' <<intVector[duljina] << ' n';
povratak 0;
}
Izlaz:
Sljedeći izlaz će se pojaviti nakon izvršavanja gornjeg koda. Izlaz pokazuje da se veličina vektora smanjuje za 1, ali element posljednje pozicije izvornog vektora i dalje postoji.
Zaključak:
Tri različite uporabe funkcije pop_back () opisane su u ovom vodiču pomoću jednostavnih primjera. Glavna svrha korištenja ove funkcije bit će jasna čitateljima nakon vježbanja primjera ovog vodiča.