logo

vector::push_back() a vector::pop_back() v C++ STL

vektory sú rovnaké ako dynamické polia s možnosťou automatickej zmeny veľkosti, keď je prvok vložený alebo odstránený, pričom ich ukladanie automaticky spracováva kontajner.

vector::push_back()

Funkcia push_back() sa používa na zatlačenie prvkov do vektora zozadu. Nová hodnota sa vloží do vektora na koniec, za aktuálny posledný prvok a veľkosť kontajnera sa zväčší o 1.



Syntax:

  vectorname.push_back(value)  Parameters : The value to be added in the back is passed as the parameter Result : Adds the value mentioned as the parameter to the back of the vector named as vectorname>

Príklady:

 Input: myvector = {1, 2, 3, 4, 5}; myvector.push_back(6); Output: 1, 2, 3, 4, 5, 6 Input: myvector = {5, 4, 3, 2, 1}; myvector.push_back(0); Output: 5, 4, 3, 2, 1, 0>

Chyby a výnimky
1. Silná záruka výnimky – ak dôjde k vyvolaniu výnimky, v kontajneri nenastanú žiadne zmeny.
2. Ak hodnota odovzdaná ako argument nie je podporovaná vektorom, vykazuje nedefinované správanie.



rozdiel medzi dvoma reťazcami python

C++






// CPP program to illustrate> // push_back() function> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>mojvektor{ 1, 2, 3, 4, 5 };> >myvector.push_back(6);> > >// Vector becomes 1, 2, 3, 4, 5, 6> > >for> (>auto> it = myvector.begin(); it != myvector.end(); ++it)> >cout <<>' '> << *it;> }>

>

string java pole
>

Výkon

 1 2 3 4 5 6>
vector::pop_back()()

Funkcia pop_back() sa používa na vysunutie alebo odstránenie prvkov z vektora zozadu. Hodnota sa odstráni z vektora od konca a veľkosť kontajnera sa zníži o 1.

Syntax:

  vectorname.pop_back()  Parameters : No parameters are passed Result : Removes the value present at the end or back of the given vector named as vectorname>

Príklady:

Input : myvector = {1, 2, 3, 4, 5}; myvector.pop_back(); Output :1, 2, 3, 4>
Input : myvector = {5, 4, 3, 2, 1}; myvector.pop_back(); Output :5, 4, 3, 2>

Chyby a výnimky

1. No-Throw-Garantee – Ak kontajner nie je prázdny, funkcia nikdy nevyhodí výnimky.
2. Ak je vektor prázdny, vykazuje nedefinované správanie.

C++




0,04 ako zlomok

// CPP program to illustrate> // pop_back() function> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>mojvektor{ 1, 2, 3, 4, 5 };> >myvector.pop_back();> > >// Vector becomes 1, 2, 3, 4> > >for> (>auto> it = myvector.begin(); it != myvector.end(); ++it)> >cout <<>' '> << *it;> }>

>

>

Výkon

 1 2 3 4>

Odstraňuje pop_back() hodnoty spolu s prvkami?

Keď sa zavolá funkcia pop_back(), posledný prvok sa odstráni, hodnoty a prvkov sú v tomto prípade jednou z tých istých vecí. Zavolá sa deštruktor uloženého objektu a dĺžka vektora sa odstráni o 1. Ak sa kapacita kontajnera nezníži, potom môžete stále pristupovať k predchádzajúcemu miestu pamäte, ale v tomto prípade nie je možné pristupovať k už vyskočenému prvok, pretože to bude mať za následok nedefinované správanie .

Aplikácia: push_back() a pop_back()

Ak je vektor prázdny, pridajte k nemu celé čísla pomocou funkcie push_back a potom vypočítajte jeho veľkosť.

Input : 1, 2, 3, 4, 5, 6 Output : 6>

Algoritmus

porovnateľný reťazec

1. Pridajte prvky do vektora pomocou funkcie push_back
2. Skontrolujte, či je veľkosť vektora 0, ak nie, zvýšte premennú počítadla inicializovanú ako 0 a vysuňte zadný prvok.
3. Tento krok opakujte, kým veľkosť vektora nebude 0.
4. Vytlačte konečnú hodnotu premennej.

C++




// CPP program to illustrate> // Application of push_back and pop_back function> #include> #include> using> namespace> std;> > int> main()> {> >int> count = 0;> >vector<>int>>myvektor;> >myvector.push_back(1);> >myvector.push_back(2);> >myvector.push_back(3);> >myvector.push_back(4);> >myvector.push_back(5);> >myvector.push_back(6);> >while> (!myvector.empty()) {> >count++;> >myvector.pop_back();> >}> >cout << count;> >return> 0;> }>

>

>

čo je uri
Výkon

6>

Pozrime sa na rozdiely v tabuľkovej forme, ako je uvedené nižšie:

vector::push_back() vector::pop_back()
Používa sa na pridanie nového prvku na koniec vektora. Používa sa na odstránenie nového prvku na konci vektora.

Jeho syntax je -:

push_back(hodnota);

Jeho syntax je -:

pop_back();

Jeho parametrom je hodnota, ktorú chceme pridať na koniec vektora. Neberie žiadne parametre.
Nemá žiadny návratový typ. Nemá žiadnu návratovú hodnotu.
Jeho zložitosť je konštantná. Jeho zložitosť je konštantná.