Vektora lielumu var samazināt, izmantojot dažādas C++ iebūvētās funkcijas. Funkcija pop_back() ir viena no tām. To izmanto, lai noņemtu pēdējo vektora elementu no aizmugures un samazinātu vektora izmēru par 1. Taču pēdējais vektora elements netiek noņemts neatgriezeniski kā funkcija erase(). Šīs funkcijas dažādie lietojumi ir izskaidroti šajā apmācībā.
Sintakse:
vektors :: pop_back ( ) ;Šai funkcijai nav argumentu, un tā neko neatgriež.
Priekšnosacījums:
Pirms šīs apmācības piemēru pārbaudes pārbaudiet, vai g++ kompilators ir instalēts vai nav sistēmā. Ja izmantojat Visual Studio kodu, instalējiet nepieciešamos paplašinājumus, lai apkopotu C++ pirmkodu un izveidotu izpildāmo kodu. Šeit lietojumprogramma Visual Studio Code ir izmantota, lai apkopotu un izpildītu C++ kodu. Šīs apmācības nākamajā daļā ir parādīti veidi, kā samazināt vektora izmēru, izmantojot funkciju pop_back().
1. piemērs: noņemiet vairākus elementus no vektora
Izveidojiet C++ failu ar šādu kodu, lai noņemtu divus elementus no vektora konteinera, samazinot vektora izmēru, izmantojot funkciju pop_back(). Kodā ir deklarēts 5 virkņu vērtību vektors. Funkcija pop_back() šeit ir izsaukta divas reizes, lai uz laiku noņemtu divus pēdējos elementus no vektora un samazinātu vektora izmēru par 2. Vektora saturs ir izdrukāts divas reizes pirms un pēc funkcijas pop_back() izmantošanas.
//Iekļaut nepieciešamās bibliotēkas
#include
#iekļaut
izmantojot nosaukumvieta std ;
starpt galvenais ( ) {
//Deklarēt virknes vērtību vektoru
vektors < virkne > ziedi = { 'Roze' , 'Lielība' , 'kliņģerīte' , 'Tulpe' , 'Ūdens lauva' } ;
cout << 'Vektora vērtības: \n ' ;
//Atkārtojiet vektoru, izmantojot cilpu, lai drukātu vērtības
priekš ( starpt i = 0 ; i < ziedi. Izmērs ( ) ; ++ i )
cout << ziedi [ i ] << ' ' ;
cout << ' \n ' ;
//Noņemt no vektora pēdējās divas vērtības
ziedi. pop_back ( ) ;
ziedi. pop_back ( ) ;
cout << ' \n Vektora vērtības pēc noņemšanas: \n ' ;
//Atkārtojiet vektoru, izmantojot cilpu, lai drukātu vērtības
priekš ( starpt i = 0 ; i < ziedi. Izmērs ( ) ; ++ i )
cout << ziedi [ i ] << ' ' ;
cout << ' \n ' ;
atgriezties 0 ;
}
Izvade:
Pēc iepriekš minētā koda izpildes parādīsies šāda izvade.
2. piemērs: izveidojiet jaunu vektoru no cita vektora
Izveidojiet C++ failu ar šādu kodu, lai ievietotu noteiktas vērtības tukšā vektorā no cita vektora, noņemot elementus, izmantojot funkciju pop_back(). Kodā ir deklarēts 8 veselu skaitļu vektors un tukšs vesela skaitļa tipa vektors. Cikla ‘while’ ir izmantota, lai iterētu katru pirmā vektora elementu un ievietotu elementu jaunajā vektorā, ja skaitlis dalās ar 2. Šeit ir aprēķināta arī visu pāra skaitļu summa. Katrs pirmā vektora elements tiks noņemts ar funkciju pop_back() katrā cilpas iterācijā, lai sasniegtu cilpas beigu nosacījumu.
//Iekļaut nepieciešamās bibliotēkas
#include
#iekļaut
izmantojot nosaukumvieta std ;
starpt galvenais ( )
{
//Deklarēt veselu skaitļu datu vektoru
vektors < starpt > intVector { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;
//Deklarēt tukšu vektoru
vektors < starpt > jaunsVector ;
cout << 'Sākotnējā vektora vērtības: \n ' ;
//Atkārtojiet vektoru, izmantojot cilpu, lai drukātu vērtības
priekš ( starpt i = 0 ; i < intVector. Izmērs ( ) ; ++ i )
cout << intVector [ i ] << ' ' ;
cout << ' \n ' ;
//Inicializējiet rezultātu
starpt rezultāts = 0 ;
//Atkārtojiet cilpu, līdz vektors kļūst tukšs
kamēr ( ! intVector. tukšs ( ) )
{
/*
Uzziniet pāra skaitļus, ko ievietot jaunajāVector
un aprēķiniet pāra skaitļu summu
*/
ja ( intVector. atpakaļ ( ) % 2 == 0 )
{
rezultāts + = intVector. atpakaļ ( ) ;
jaunsVector. atgrūst ( intVector. atpakaļ ( ) ) ;
}
//Noņemt elementu no intVactor beigām
intVector. pop_back ( ) ;
}
cout << 'Jaunā vektora vērtības: \n ' ;
//Atkārtojiet vektoru, izmantojot cilpu, lai drukātu vērtības
priekš ( starpt i = 0 ; i < jaunsVector. Izmērs ( ) ; ++ i )
cout << jaunsVector [ i ] << ' ' ;
cout << ' \n ' ;
cout << 'Visu pāra skaitļu summa:' << rezultāts << ' \n ' ;
atgriezties 0 ;
}
Izvade:
Pēc iepriekš minētā koda izpildes parādīsies šāda izvade. Pirmajā vektorā bija trīs pāra skaitļi. Ir 8, 2 un 4.
3. piemērs: pārbaudiet, vai pēdējais vektora elements ir noņemts
Iepriekš tika minēts, ka pop_back() neatgriezeniski nenoņem elementus no vektora, un tas noņem elementu, samazinot tikai vektora izmēru. Tātad noņemtais elements paliek tajā pašā pozīcijā, līdz vektora lielums palielinās un aizstāj elementu ar citu elementu. Izveidojiet C++ failu ar šādu kodu, lai pārbaudītu, vai ar funkciju pop_back() noņemtais elements pastāv vai nē. Sākotnējā vektora pēdējā pozīcija ir izdrukāta pirms un pēc funkcijas pop_back() izmantošanas.
#include#iekļaut
izmantojot nosaukumvieta std ;
starpt galvenais ( )
{
//Deklarēt veselu skaitļu datu vektoru
vektors < starpt > intVector { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;
//Deklarēt tukšu vektoru
vektors < starpt > jaunsVector ;
//Deklarējiet veselu mainīgo
starpt garums ;
//Izdrukājiet pēdējo elementu, pamatojoties uz vektora izmēru
garums = intVector. Izmērs ( ) ;
cout << 'Vektora pašreizējais lielums:' << garums << ' \n ' ;
cout << 'Pēdējā vektora vērtība pirms noņemšanas:' << intVector [ garums - 1 ] << ' \n ' ;
//Noņemt elementu no vektora gala
intVector. pop_back ( ) ;
//Izdrukājiet pēdējo elementu, pamatojoties uz vektora izmēru pēc noņemšanas
garums = intVector. Izmērs ( ) ;
cout << 'Vektora pašreizējais lielums:' << garums << ' \n ' ;
cout << 'Pēdējā vektora vērtība pēc noņemšanas:' << intVector [ garums ] << ' \n ' ;
atgriezties 0 ;
}
Izvade:
Pēc iepriekš minētā koda izpildes parādīsies šāda izvade. Izvade parāda, ka vektora izmērs ir samazināts par 1, bet sākotnējā vektora pēdējās pozīcijas elements joprojām pastāv.
Secinājums:
Šajā apmācībā, izmantojot vienkāršus piemērus, ir aprakstīti trīs dažādi funkcijas pop_back() lietojumi. Galvenais šīs funkcijas izmantošanas mērķis tiks noskaidrots lasītājiem pēc šīs apmācības piemēru praktizēšanas.