Вектори такі ж, як і динамічні масиви, з можливістю автоматично змінювати розмір, коли елемент вставляється або видаляється, а їх зберігання автоматично обробляється контейнером.
вектор::push_back()Функція push_back() використовується для проштовхування елементів у вектор ззаду. Нове значення вставляється у вектор у кінці, після поточного останнього елемента, а розмір контейнера збільшується на 1.
Синтаксис:
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>
приклади:
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>
Помилки та винятки
1. Надійна гарантія виключення – якщо генерується виняток, у контейнері не відбувається жодних змін.
2. Якщо значення, передане як аргумент, не підтримується вектором, він показує невизначену поведінку.
jtextfield
C++
// CPP program to illustrate> // push_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >мійвектор{ 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;> }> |
>
весняні петлі
>Вихід
1 2 3 4 5 6>vector::pop_back()()
Функція pop_back() використовується для висунення або видалення елементів із вектора ззаду. Значення видаляється з вектора з кінця, а розмір контейнера зменшується на 1.
Синтаксис:
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>
приклади:
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>
Помилки та винятки
1. Гарантія No-Throw-Guarantee – Якщо контейнер не порожній, функція ніколи не генерує винятки.
2. Якщо вектор порожній, він демонструє невизначену поведінку.
C++
// CPP program to illustrate> // pop_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >мійвектор{ 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;> }> |
як перевірити розмір екрана
>
>Вихід
1 2 3 4>
Pop_back() видаляє значення разом з елементами?
Під час виклику функції pop_back() останній елемент видаляється, значення і елементів є одним і тим же в цьому випадку. Викликається деструктор збереженого об’єкта, і довжина вектора зменшується на 1. Якщо місткість контейнера не зменшується, ви все ще можете отримати доступ до попереднього розташування пам’яті, але в цьому випадку немає сенсу звертатися до вже вилученого. елемент, оскільки це призведе до an невизначена поведінка .
застосування: push_back() і pop_back()
Дано порожній вектор, додайте до нього цілі числа за допомогою функції push_back, а потім обчисліть його розмір.
Input : 1, 2, 3, 4, 5, 6 Output : 6>
Алгоритм
тестування та види програмного забезпечення
1. Додайте елементи до вектора за допомогою функції push_back
2. Перевірте, чи розмір вектора дорівнює 0, якщо ні, збільште змінну лічильника, ініціалізовану як 0, і витягніть елемент back.
3. Повторюйте цей крок, доки розмір вектора не стане рівним 0.
4. Вивести кінцеве значення змінної.
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> >мій вектор;> > 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;> }> |
>
>Вихід
6>
Давайте подивимося на відмінності в табличній формі, як показано нижче:
створення столів з латексу
вектор::push_back() | вектор::поп_назад() |
Він використовується для додавання нового елемента в кінець вектора. | Він використовується для видалення нового елемента в кінці вектора. |
Його синтаксис -: push_back(значення); | Його синтаксис -: pop_back(); |
Його параметр — це значення, яке ми хочемо додати в кінець вектора. | Він не приймає жодних параметрів. |
Він не має жодного типу повернення. | Він не має зворотного значення. |
Його складність постійна. | Його складність постійна. |