Dimensiunea vectorului poate fi redusă prin utilizarea diferitelor funcții încorporate ale C++. Funcția pop_back() este una dintre ele. Este folosit pentru a elimina ultimul element al vectorului din spate și pentru a reduce dimensiunea vectorului cu 1. Dar ultimul element al vectorului nu este eliminat definitiv ca și funcția erase(). Diferitele utilizări ale acestei funcții au fost explicate în acest tutorial.
Sintaxă:
vector :: pop_back ( ) ;Această funcție nu are niciun argument și nu returnează nimic.
Condiție prealabilă:
Înainte de a verifica exemplele acestui tutorial, trebuie să verificați că compilatorul g++ este instalat sau nu în sistem. Dacă utilizați Visual Studio Code, atunci instalați extensiile necesare pentru a compila codul sursă C++ pentru a crea codul executabil. Aici, aplicația Visual Studio Code a fost folosită pentru a compila și executa codul C++. Modalitățile de a reduce dimensiunea vectorului folosind funcția pop_back() au fost prezentate în următoarea parte a acestui tutorial.
Exemplul-1: Eliminați mai multe elemente din vector
Creați un fișier C++ cu următorul cod pentru a elimina două elemente din containerul de vectori prin reducerea dimensiunii vectorului folosind funcția pop_back(). În cod a fost declarat un vector cu 5 valori de șir. Funcția pop_back() a fost apelată de două ori aici pentru a elimina temporar două ultime elemente din vector și a reduce dimensiunea vectorului cu 2. Conținutul vectorului a fost tipărit de două ori înainte și după utilizarea funcției pop_back().
//Include bibliotecile necesare
#include
#include
folosind spatiu de nume std ;
int principal ( ) {
//Declară un vector de valori șir
vector < şir > flori = { 'Trandafir' , 'Lity' , 'Gălbenele' , 'Lalea' , „Leul de apă” } ;
cout << „Valorile vectorului: \n ' ;
//Repetați vectorul folosind bucla pentru a imprima valorile
pentru ( int i = 0 ; i < flori. mărimea ( ) ; ++ i )
cout << flori [ i ] << ' ' ;
cout << ' \n ' ;
//Elimină ultimele două valori din vector
flori. pop_back ( ) ;
flori. pop_back ( ) ;
cout << ' \n Valorile vectorului după eliminare: \n ' ;
//Repetați vectorul folosind bucla pentru a imprima valorile
pentru ( int i = 0 ; i < flori. mărimea ( ) ; ++ i )
cout << flori [ i ] << ' ' ;
cout << ' \n ' ;
întoarcere 0 ;
}
Ieșire:
Următoarea ieșire va apărea după executarea codului de mai sus.
Exemplul-2: Creați un vector nou dintr-un alt vector
Creați un fișier C++ cu următorul cod pentru a insera anumite valori într-un vector gol dintr-un alt vector prin eliminarea elementelor folosind funcția pop_back(). În cod au fost declarate un vector de 8 numere întregi și un vector gol de tip întreg. Bucla „while” a fost folosită pentru a repeta fiecare element al primului vector și pentru a introduce elementul în noul vector dacă numărul este divizibil cu 2. Aici a fost calculată și suma tuturor numerelor pare. Fiecare element al primului vector va fi eliminat de funcția pop_back() în fiecare iterație a buclei pentru a ajunge la condiția de terminare a buclei.
//Include bibliotecile necesare
#include
#include
folosind spatiu de nume std ;
int principal ( )
{
//Declară un vector de date întregi
vector < int > intVector { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;
//Declară un vector gol
vector < int > nouVector ;
cout << „Valorile vectorului original: \n ' ;
//Repetați vectorul folosind bucla pentru a imprima valorile
pentru ( int i = 0 ; i < intVector. mărimea ( ) ; ++ i )
cout << intVector [ i ] << ' ' ;
cout << ' \n ' ;
//Inițializați rezultatul
int rezultat = 0 ;
//Iterează bucla până când vectorul devine gol
in timp ce ( ! intVector. gol ( ) )
{
/*
Aflați numerele pare de inserat în noul vector
și calculați suma numerelor pare
*/
dacă ( intVector. înapoi ( ) % 2 == 0 )
{
rezultat + = intVector. înapoi ( ) ;
nouVector. împinge înapoi ( intVector. înapoi ( ) ) ;
}
//Elimină elementul de la sfârșitul intVactor
intVector. pop_back ( ) ;
}
cout << „Valorile noului vector: \n ' ;
//Repetați vectorul folosind bucla pentru a imprima valorile
pentru ( int i = 0 ; i < nouVector. mărimea ( ) ; ++ i )
cout << nouVector [ i ] << ' ' ;
cout << ' \n ' ;
cout << „Suma tuturor numerelor pare:” << rezultat << ' \n ' ;
întoarcere 0 ;
}
Ieșire:
Următoarea ieșire va apărea după executarea codului de mai sus. Au fost trei numere pare în primul vector. Sunt 8, 2 și 4.
Exemplul-3: Verificați că ultimul element al vectorului este eliminat sau nu
S-a menționat mai devreme că pop_back() nu îndepărtează elementele permanent din vector și îndepărtează elementul doar prin reducerea dimensiunii vectorului. Deci, elementul eliminat rămâne în aceeași poziție până când dimensiunea vectorului crește și înlocuiește elementul cu un alt element. Creați un fișier C++ cu următorul cod pentru a verifica dacă elementul eliminat de funcția pop_back() există sau nu. Ultima poziție a vectorului original a fost tipărită înainte și după utilizarea funcției pop_back().
#include#include
folosind spatiu de nume std ;
int principal ( )
{
//Declară un vector de date întregi
vector < int > intVector { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;
//Declară un vector gol
vector < int > nouVector ;
//Declară o variabilă întreagă
int lungime ;
//Tipărește ultimul element în funcție de dimensiunea vectorului
lungime = intVector. mărimea ( ) ;
cout << „Dimensiunea actuală a vectorului:” << lungime << ' \n ' ;
cout << „Ultima valoare a vectorului înainte de eliminare:” << intVector [ lungime - 1 ] << ' \n ' ;
//Elimină elementul de la sfârșitul vectorului
intVector. pop_back ( ) ;
//Tipărește ultimul element pe baza dimensiunii vectorului după eliminare
lungime = intVector. mărimea ( ) ;
cout << „Dimensiunea actuală a vectorului:” << lungime << ' \n ' ;
cout << „Ultima valoare a vectorului după eliminare:” << intVector [ lungime ] << ' \n ' ;
întoarcere 0 ;
}
Ieșire:
Următoarea ieșire va apărea după executarea codului de mai sus. Rezultatul arată că dimensiunea vectorului este redusă cu 1, dar elementul din ultima poziție a vectorului original încă există.
Concluzie:
Trei utilizări diferite ale funcției pop_back() au fost descrise în acest tutorial folosind exemple simple. Scopul principal al utilizării acestei funcții va fi clar pentru cititori după exersarea exemplelor acestui tutorial.