Användning av vektor Pop_Back () -funktion i C ++

Use Vector Pop_back Function C



Storleken på vektorn kan minskas genom att använda olika inbyggda funktioner i C ++. Pop_back () -funktionen är en av dem. Den används för att ta bort det sista elementet i vektorn från baksidan och minska storleken på vektorn med 1. Men det sista elementet i vektorn tas inte bort permanent som funktionen radera (). De olika användningarna av denna funktion har förklarats i denna handledning.

Syntax:

vektor::pop_back();

Denna funktion har inget argument, och den returnerar ingenting.





Nödvändig förutsättning:

Innan du kontrollerar exemplen på den här självstudien måste du kontrollera att g ++ - kompilatorn är installerad eller inte i systemet. Om du använder Visual Studio Code installerar du nödvändiga tillägg för att kompilera källkoden C ++ för att skapa den körbara koden. Här har programmet Visual Studio Code använts för att kompilera och köra C ++ - koden. Sätten att minska storleken på vektorn med hjälp av pop_back () -funktionen har visats i nästa del av den här självstudien.



Exempel 1: Ta bort flera element från vektorn

Skapa en C ++ - fil med följande kod för att ta bort två element från vektorbehållaren genom att minska storleken på vektorn med funktionen pop_back (). En vektor med 5 strängvärden har deklarerats i koden. Pop_back () -funktionen har kallats två gånger här för att ta bort två sista element från vektorn tillfälligt och minska storleken på vektorn med 2. Innehållet i vektorn har skrivits ut två gånger före och efter användning av pop_back () -funktionen.



// Inkludera nödvändiga bibliotek

#omfatta

#omfatta

använder sig av namnrymdtimmar;

inthuvud() {

// Deklarera en vektor med strängvärden

vektor<sträng>blommor= {'Reste sig','Lity','Marigold','Tulpan','Water Liiy'};

kosta << 'Vektorns värden: n';

// Iterera vektorn med loop för att skriva ut värdena

för(inti= 0;i<blommor.storlek(); ++i)

kosta <<blommor[i] << '';

kosta << ' n';

// Ta bort de två sista värdena från vektorn

blommor.pop_back();

blommor.pop_back();

kosta << ' nVektorns värden efter borttagning: n';

// Iterera vektorn med loop för att skriva ut värdena

för(inti= 0;i<blommor.storlek(); ++i)

kosta <<blommor[i] << '';

kosta << ' n';

lämna tillbaka 0;

}

Produktion:

Följande utdata visas efter att koden ovan har körts.





Exempel-2: Skapa en ny vektor från en annan vektor

Skapa en C ++ - fil med följande kod för att infoga specifika värden i en tom vektor från en annan vektor genom att ta bort elementen med pop_back () - funktionen. En vektor med 8 heltal och en tom vektor av heltalstyp har deklarerats i koden. 'While' -slingan har använts för att iterera varje element i den första vektorn och infoga elementet i den nya vektorn om talet är delbart med 2. Summan av alla jämna tal har också beräknats här. Varje element i den första vektorn kommer att tas bort av pop_back () -funktionen i varje iteration av slingan för att nå slingans avslutningstillstånd.



// Inkludera nödvändiga bibliotek

#omfatta

#omfatta

använder sig av namnrymdtimmar;

inthuvud()

{

// Deklarera en vektor med heltalsdata

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

// Deklarera en tom vektor

vektor<int>newVector;

kosta << 'Värdena för den ursprungliga vektorn: n';

// Iterera vektorn med loop för att skriva ut värdena

för(inti= 0;i<intVector.storlek(); ++i)

kosta <<intVector[i] << '';

kosta << ' n';

// Initiera resultatet

intresultat= 0;

// Iterera slingan tills vektorn blir tom

medan(!intVector.tömma())

{

/ *

Ta reda på jämna siffror som ska infogas i den nya vektorn

och beräkna summan av jämna tal

* /


om (intVector.tillbaka() % 2 == 0)

{

resultat+=intVector.tillbaka();

newVector.trycka tillbaka(intVector.tillbaka());

}

// Ta bort element från slutet av intVactor

intVector.pop_back();

}

kosta << 'Värdena för den nya vektorn: n';

// Iterera vektorn med loop för att skriva ut värdena

för(inti= 0;i<newVector.storlek(); ++i)

kosta <<newVector[i] << '';

kosta << ' n';

kosta << 'Summan av alla jämna tal:' <<resultat<< ' n';

lämna tillbaka 0;

}

Produktion:

Följande utdata visas efter att koden ovan har körts. Det fanns tre jämna tal i den första vektorn. Det finns 8, 2 och 4.

Exempel 3: Kontrollera att det sista elementet i vektorn är borttaget eller inte

Det nämns tidigare att pop_back () inte tar bort elementen permanent från vektorn, och det tar bort elementet genom att endast minska storleken på vektorn. Så, det borttagna elementet förblir i samma position tills vektorns storlek ökar och ersätter elementet med ett annat element. Skapa en C ++ - fil med följande kod för att kontrollera att elementet som har tagits bort med pop_back () - funktionen finns eller inte. Den sista positionen för den ursprungliga vektorn har skrivits ut före och efter användning av pop_back () -funktionen.

#omfatta

#omfatta

använder sig av namnrymdtimmar;

inthuvud()

{

// Deklarera en vektor med heltalsdata

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

// Deklarera en tom vektor

vektor<int>newVector;

// Deklarera en heltalsvariabel

intlängd;

// Skriv ut det sista elementet baserat på vektorn

längd=intVector.storlek();

kosta << 'Den aktuella storleken på vektorn:' <<längd<< ' n';

kosta << 'Vektorns sista värde före borttagning:' <<intVector[längd-1] << ' n';

// Ta bort elementet från slutet av vektorn

intVector.pop_back();

// Skriv ut det sista elementet baserat på vektorens storlek efter borttagning

längd=intVector.storlek();

kosta << 'Den aktuella storleken på vektorn:' <<längd<< ' n';

kosta << 'Vektorns sista värde efter borttagning:' <<intVector[längd] << ' n';

lämna tillbaka 0;

}

Produktion:

Följande utdata visas efter att koden ovan har körts. Utdata visar att storleken på vektorn reduceras med 1, men elementet i den sista positionen för den ursprungliga vektorn finns fortfarande.

Slutsats:

Tre olika användningsområden för pop_back () -funktionen har beskrivits i denna handledning med enkla exempel. Huvudsyftet med att använda denna funktion kommer att rensas för läsarna efter att ha praktiserat exemplen på denna handledning.