Funktsiooni Vector Pop_Back () kasutamine C ++ -is

Use Vector Pop_back Function C



Vektori suurust saab vähendada, kasutades erinevaid C ++ sisseehitatud funktsioone. Funktsioon pop_back () on üks neist. Seda kasutatakse vektori viimase elemendi eemaldamiseks tagant ja vektori suuruse vähendamiseks 1 võrra. Kuid vektori viimast elementi ei eemaldata jäädavalt nagu funktsiooni erase (). Selles juhendis on selgitatud selle funktsiooni erinevaid kasutusviise.

Süntaks:

vektor::pop_back();

Sellel funktsioonil pole argumente ja see ei tagasta midagi.





Eeltingimus:

Enne selle õpetuse näidete kontrollimist peate kontrollima, kas kompilaator g ++ on süsteemi installitud või mitte. Kui kasutate Visual Studio koodi, installige käivitatava koodi loomiseks vajalikud laiendused C ++ lähtekoodi kompileerimiseks. Siin on C ++ koodi kompileerimiseks ja käivitamiseks kasutatud rakendust Visual Studio Code. Selle juhendi järgmises osas on näidatud vektori suuruse vähendamise viisid funktsiooni pop_back () abil.



Näide-1: eemaldage vektorist mitu elementi

Looge järgmise koodiga C ++ -fail, et eemaldada vektormahutist kaks elementi, vähendades vektori suurust, kasutades funktsiooni pop_back (). Koodis on deklareeritud 5 stringiväärtusega vektor. Funktsiooni pop_back () on siin kaks korda kutsutud, et ajutiselt eemaldada kaks viimast elementi vektorist ja vähendada vektori suurust 2 võrra. Vektori sisu on trükitud kaks korda enne ja pärast funktsiooni pop_back () kasutamist.



// Kaasa vajalikud teegid

#kaasake

#kaasake

kasutades nimeruumtundi;

intpeamine() {

// Deklareeri stringiväärtuste vektor

vektor<string>lilled= {'Roos','Lity','Saialill','Tulp','Vesi Liiy'};

maksma << 'Vektori väärtused: n';

// Väärtuste printimiseks korrake vektorit silmuse abil

eest(inti= 0;i<lilled.suurus(); ++i)

maksma <<lilled[i] << '';

maksma << ' n';

// Eemaldage vektorist kaks viimast väärtust

lilled.pop_back();

lilled.pop_back();

maksma << ' nVektori väärtused pärast eemaldamist: n';

// Väärtuste printimiseks korrake vektorit silmuse abil

eest(inti= 0;i<lilled.suurus(); ++i)

maksma <<lilled[i] << '';

maksma << ' n';

tagasi 0;

}

Väljund:

Pärast ülaltoodud koodi täitmist kuvatakse järgmine väljund.





Näide-2: looge teisest vektorist uus vektor

Looge järgmise koodiga C ++ -fail, et sisestada konkreetsed väärtused tühjast vektorist teisest vektorist, eemaldades elemendid funktsiooni pop_back () abil. Koodis on deklareeritud 8 täisarvulist vektorit ja täisarvu tüüpi tühi vektor. Ahelat „while” on kasutatud esimese vektori iga elemendi kordamiseks ja elemendi sisestamiseks uude vektorisse, kui arv on jagatav 2 -ga. Siin on arvutatud ka kõigi paarisarvude summa. Esimese vektori kõik elemendid eemaldatakse funktsiooni pop_back () abil silmuse igas iteratsioonis, et saavutada silmuse lõpetamise tingimus.



// Kaasa vajalikud teegid

#kaasake

#kaasake

kasutades nimeruumtundi;

intpeamine()

{

// Täisarvuliste andmete vektori deklareerimine

vektor<int>intVektor{ 5,9,4,7,2,8,1,3 };

// Tühja vektori deklareerimine

vektor<int>newVektor;

maksma << 'Algse vektori väärtused: n';

// Väärtuste printimiseks korrake vektorit silmuse abil

eest(inti= 0;i<intVektor.suurus(); ++i)

maksma <<intVektor[i] << '';

maksma << ' n';

// Tulemuse initsialiseerimine

inttulemus= 0;

// Korda tsüklit, kuni vektor saab tühjaks

samas(!intVektor.tühi())

{

/ *

Siit saate teada paarisarvud, mida uude vektorisse sisestada

ja arvutage paarisarvude summa

* /


kui (intVektor.tagasi() % 2 == 0)

{

tulemus+=intVektor.tagasi();

newVektor.lükka tagasi(intVektor.tagasi());

}

// Eemalda element intVactori otsast

intVektor.pop_back();

}

maksma << 'Uue vektori väärtused: n';

// Väärtuste printimiseks korrake vektorit silmuse abil

eest(inti= 0;i<newVektor.suurus(); ++i)

maksma <<newVektor[i] << '';

maksma << ' n';

maksma << 'Kõikide paarisarvude summa:' <<tulemus<< ' n';

tagasi 0;

}

Väljund:

Pärast ülaltoodud koodi täitmist kuvatakse järgmine väljund. Esimeses vektoris oli kolm paarisarvu. Neid on 8, 2 ja 4.

Näide-3: kontrollige, kas vektori viimane element on eemaldatud või mitte

Varem mainiti, et pop_back () ei eemalda elemente vektorist jäädavalt ja see eemaldab elemendi, vähendades ainult vektori suurust. Niisiis, eemaldatud element jääb samasse asendisse, kuni vektori suurus suureneb ja asendab elemendi teise elemendiga. Looge järgmise koodiga C ++ -fail, et kontrollida, kas funktsiooni pop_back () abil eemaldatud element on olemas või mitte. Algse vektori viimane asukoht on prinditud enne ja pärast funktsiooni pop_back () kasutamist.

#kaasake

#kaasake

kasutades nimeruumtundi;

intpeamine()

{

// Täisarvuliste andmete vektori deklareerimine

vektor<int>intVektor{ 54,19,46,72,22,83,10,53 };

// Tühja vektori deklareerimine

vektor<int>newVektor;

// Täisarvulise muutuja deklareerimine

intpikkus;

// Prindi viimane element vektori suuruse alusel

pikkus=intVektor.suurus();

maksma << 'Vektori praegune suurus:' <<pikkus<< ' n';

maksma << 'Vektori viimane väärtus enne eemaldamist:' <<intVektor[pikkus-1] << ' n';

// Eemaldage element vektori otsast

intVektor.pop_back();

// Prindi viimane element pärast eemaldamist vektori suuruse järgi

pikkus=intVektor.suurus();

maksma << 'Vektori praegune suurus:' <<pikkus<< ' n';

maksma << 'Vektori viimane väärtus pärast eemaldamist:' <<intVektor[pikkus] << ' n';

tagasi 0;

}

Väljund:

Pärast ülaltoodud koodi täitmist kuvatakse järgmine väljund. Väljund näitab, et vektori suurust vähendatakse 1 võrra, kuid algvektori viimase positsiooni element on endiselt olemas.

Järeldus:

Selles õpetuses on lihtsate näidete abil kirjeldatud funktsiooni pop_back () kolme erinevat kasutust. Selle funktsiooni kasutamise peamine eesmärk selgub lugejatel pärast selle õpetuse näidete harjutamist.