Paggamit ng Vector Pop_Back () Function sa C ++

Use Vector Pop_back Function C



Ang laki ng vector ay maaaring mabawasan sa pamamagitan ng paggamit ng iba't ibang mga built-in na pag-andar ng C ++. Ang pagpapaandar ng pop_back () ay isa sa mga ito. Ginagamit ito upang alisin ang huling elemento ng vector mula sa likuran at bawasan ang laki ng vector sa pamamagitan ng 1. Ngunit ang huling elemento ng vector ay hindi natanggal nang tuluyan tulad ng burahin () na pagpapaandar. Ang iba't ibang paggamit ng pagpapaandar na ito ay naipaliwanag sa tutorial na ito.

Syntax:

vector::pop_back();

Ang pagpapaandar na ito ay walang anumang argumento, at wala itong ibinabalik.







Paunang kinakailangan:

Bago suriin ang mga halimbawa ng tutorial na ito, kailangan mong suriin ang naka-install na g ++ compiler o wala sa system. Kung gumagamit ka ng Visual Studio Code, pagkatapos ay i-install ang mga kinakailangang extension upang maipon ang C ++ source code upang likhain ang maipapatupad na code. Dito, ang application ng Visual Studio Code ay ginamit upang ipagsama at maipatupad ang C ++ code. Ang mga paraan upang mabawasan ang laki ng vector gamit ang pop_back () na pagpapaandar na ipinakita sa susunod na bahagi ng tutorial na ito.



Halimbawa-1: Alisin ang maraming elemento mula sa vector

Lumikha ng isang C ++ file na may sumusunod na code upang alisin ang dalawang elemento mula sa lalagyan ng vector sa pamamagitan ng pagbawas sa laki ng vector gamit ang pop_back () function. Ang isang vector ng 5 halaga ng string ay naideklara sa code. Ang pagpapaandar na pop_back () ay tinawag ng dalawang beses dito upang pansamantalang alisin ang huling mga elemento mula sa vector at bawasan ang laki ng vector sa pamamagitan ng 2. Ang nilalaman ng vector ay na-print nang dalawang beses bago at pagkatapos magamit ang pop_back () na function.



// Isama ang mga kinakailangang aklatan

# isama

# isama

gamit namespaceoras;

intpangunahing() {

// Ideklara ang isang vector ng mga halaga ng string

vector<lubid>mga bulaklak= {'Rose','Lity','Marigold','Tulip','Tubig Liiy'};

gastos << 'Ang mga halaga ng vector: n';

// Iterate ang vector gamit ang loop upang mai-print ang mga halaga

para sa(intako= 0;ako<mga bulaklak.laki(); ++ako)

gastos <<mga bulaklak[ako] << ';

gastos << ' n';

// Tanggalin ang huling dalawang halaga mula sa vector

mga bulaklak.pop_back();

mga bulaklak.pop_back();

gastos << ' nAng mga halaga ng vector pagkatapos alisin: n';

// Iterate ang vector gamit ang loop upang mai-print ang mga halaga

para sa(intako= 0;ako<mga bulaklak.laki(); ++ako)

gastos <<mga bulaklak[ako] << ';

gastos << ' n';

bumalik ka 0;

}

Output:

Ang sumusunod na output ay lilitaw pagkatapos ipatupad ang code sa itaas.





Halimbawa-2: Lumikha ng isang bagong vector mula sa ibang vector

Lumikha ng isang C ++ file na may sumusunod na code upang maipasok ang mga tukoy na halaga sa isang walang laman na vector mula sa isa pang vector sa pamamagitan ng pag-alis ng mga elemento gamit ang pop_back () function. Ang isang vector ng 8 mga numero ng integer at isang walang laman na vector ng uri ng integer ay naideklara sa code. Ang loop na 'habang' ay ginamit upang paulit-ulitin ang bawat elemento ng unang vector at ipasok ang elemento sa bagong vector kung ang numero ay nahahati sa pamamagitan ng 2. Ang kabuuan ng lahat ng kahit na mga numero ay kinakalkula din dito. Ang bawat elemento ng unang vector ay aalisin ng pag-andar ng pop_back () sa bawat pag-ulit ng loop upang maabot ang kondisyon ng pagwawakas ng loop.



// Isama ang mga kinakailangang aklatan

# isama

# isama

gamit namespaceoras;

intpangunahing()

{

// Ideklara ang isang vector ng data ng integer

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

// Ideklara ang isang walang laman na vector

vector<int>bagongVector;

gastos << 'Ang mga halaga ng orihinal na vector: n';

// Iterate ang vector gamit ang loop upang mai-print ang mga halaga

para sa(intako= 0;ako<intVector.laki(); ++ako)

gastos <<intVector[ako] << ';

gastos << ' n';

// Ipasimula ang resulta

intresulta= 0;

// Iterate ang loop hanggang sa maging walang laman ang vector

habang(!intVector.walang laman())

{

/ *

Alamin ang pantay na mga numero upang ipasok sa bagongVector

at kalkulahin ang kabuuan ng pantay na mga numero

* /


kung (intVector.bumalik() % 2 == 0)

{

resulta+=intVector.bumalik();

bagongVector.push_back(intVector.bumalik());

}

// Tanggalin ang elemento mula sa dulo ng intVactor

intVector.pop_back();

}

gastos << 'Ang mga halaga ng bagong vector: n';

// Iterate ang vector gamit ang loop upang mai-print ang mga halaga

para sa(intako= 0;ako<bagongVector.laki(); ++ako)

gastos <<bagongVector[ako] << ';

gastos << ' n';

gastos << 'Ang kabuuan ng lahat ng mga pantay na numero:' <<resulta<< ' n';

bumalik ka 0;

}

Output:

Ang sumusunod na output ay lilitaw pagkatapos ipatupad ang code sa itaas. Mayroong tatlong pantay na mga numero sa unang vector. Mayroong 8, 2, at 4.

Halimbawa-3: Suriin ang huling elemento ng vector ay tinanggal o hindi

Nabanggit nang mas maaga na ang pop_back () ay hindi permanenteng aalisin ang mga elemento mula sa vector, at inaalis nito ang elemento sa pamamagitan ng pagbawas sa laki ng vector lamang. Kaya, ang tinanggal na elemento ay mananatili sa parehong posisyon hanggang sa ang laki ng vector ay tumataas at pinalitan ang elemento ng isa pang elemento. Lumikha ng isang C ++ file na may sumusunod na code upang suriin ang sangkap na tinanggal ng pop_back () na function na mayroon o hindi. Ang huling posisyon ng orihinal na vector ay nai-print bago at pagkatapos gamitin ang pop_back () function.

# isama

# isama

gamit namespaceoras;

intpangunahing()

{

// Ideklara ang isang vector ng data ng integer

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

// Ideklara ang isang walang laman na vector

vector<int>bagongVector;

// Ideklara ang isang variable ng integer

inthaba;

// I-print ang huling elemento batay sa laki ng vector

haba=intVector.laki();

gastos << 'Ang kasalukuyang laki ng vector:' <<haba<< ' n';

gastos << 'Ang huling halaga ng vector bago alisin:' <<intVector[haba-1] << ' n';

// Tanggalin ang elemento mula sa dulo ng vector

intVector.pop_back();

// I-print ang huling elemento batay sa laki ng vector pagkatapos alisin

haba=intVector.laki();

gastos << 'Ang kasalukuyang laki ng vector:' <<haba<< ' n';

gastos << 'Ang huling halaga ng vector pagkatapos alisin:' <<intVector[haba] << ' n';

bumalik ka 0;

}

Output:

Ang sumusunod na output ay lilitaw pagkatapos ipatupad ang code sa itaas. Ipinapakita ng output na ang laki ng vector ay nabawasan ng 1, ngunit ang elemento ng huling posisyon ng orihinal na vector ay mayroon pa rin.

Konklusyon:

Tatlong magkakaibang paggamit ng pop_back () na function ang nailarawan sa tutorial na ito gamit ang mga simpleng halimbawa. Ang pangunahing layunin ng paggamit ng pagpapaandar na ito ay malilinis para sa mga mambabasa pagkatapos ng pagsasanay ng mga halimbawa ng tutorial na ito.