Динамичният масив може да бъде реализиран чрез използване на вектор в C++. Елементите могат да се добавят към вектора по различни начини. Функцията push_back() е един от начините за вмъкване на нов елемент в края на вектора, който увеличава размера на вектора с 1. Тази функция е полезна, когато се изисква добавяне на един елемент към вектора. Ако типът данни на вектора не поддържа стойността, подадена от аргумента на тази функция, тогава ще бъде генерирано изключение и няма да бъдат вмъкнати данни. Начинът за вмъкване на данни във вектор с помощта на функцията push_back() е показан в този урок.
Синтаксис:
вектор :: избутвам ( тип_стойност n ) ;Стойността на n ще бъде вмъкната в края на вектора, ако типът данни на вектора поддържа типа данни на n. Не връща нищо.
Предпоставка:
Преди да проверите примерите от този урок, трябва да проверите дали g++ компилаторът е инсталиран или не в системата. Ако използвате Visual Studio Code, инсталирайте необходимите разширения, за да компилирате изходния код на C++, за да създадете изпълнимия код. Тук приложението Visual Studio Code е използвано за компилиране и изпълнение на C++ кода. Различни употреби на функцията push_back() за вмъкване на елемент(и) във вектор са показани в следващата част на този урок.
Пример-1: Добавяне на множество елементи в края на вектора
Създайте C++ файл със следния код, за да вмъкнете множество елементи в края на вектора, като използвате функцията push_back(). В кода е дефиниран вектор от три низови стойности. Функцията push_back() е извикана три пъти, за да вмъкне три елемента в края на вектора. Съдържанието на вектора ще бъде отпечатано преди и след вмъкването на елементите.
//Включете необходимите библиотеки
#include
#include <вектор>
използвайки пространство от имена std ;
вътр основен ( )
{
//Деклариране на вектор от низови стойности
вектор < низ > птици = { 'Сив папагал' , 'Диамантен гълъб' , 'коктейл' } ;
cout << „Стойностите на вектора преди вмъкване: \н ' ;
//Итерация на вектора с помощта на цикъл за отпечатване на стойностите
за ( вътр i = 0 ; i < птици. размер ( ) ; ++ i )
cout << птици [ i ] << ' ' ;
cout << ' \н ' ;
/*
Добавете три стойности в края на вектора
използвайки функцията push_back().
*/
птици. избутвам ( Майна ) ;
птици. избутвам ( 'папагалчета' ) ;
птици. избутвам ( 'какаду' ) ;
cout << „Стойностите на вектора след вмъкване: \н ' ;
//Итерация на вектора с помощта на цикъл за отпечатване на стойностите
за ( вътр i = 0 ; i < птици. размер ( ) ; ++ i )
cout << птици [ i ] << ' ' ;
cout << ' \н ' ;
връщане 0 ;
}
Изход:
Следният изход ще се появи след изпълнение на горния код. Резултатът показва, че в края на вектора са вмъкнати три нови елемента.
Пример-2: Вмъкване на стойности във вектора чрез въвеждане
Създайте C++ файл със следния код, за да вмъкнете елемента в празен вектор, като вземете стойности от потребителя и използвате функцията push_back(). В кода е деклариран празен вектор от целочислен тип данни. След това цикъл „за“ взема 5 числа от потребителя и вмъква числата във вектора с помощта на функцията push_back(). Съдържанието на вектора ще бъде отпечатано след вмъкването.
//Включете необходимите библиотеки#include
#include <вектор>
използвайки пространство от имена std ;
вътр основен ( )
{
//Деклариране на цяло числов вектор
вектор < вътр > intVector ;
//Деклариране на цяло число
вътр номер ;
cout << „Въведете 5 числа: \н ' ;
/*
Повторете цикъла 5 пъти, за да вмъкнете 5 цели числа
във вектора с помощта на функцията push_back().
*/
за ( вътр i = 0 ; i < 5 ; i ++ ) {
храня се >> номер ;
intVector. избутвам ( номер ) ;
}
cout << „Стойностите на вектора след вмъкване: \н ' ;
//Итерация на вектора с помощта на цикъл за отпечатване на стойностите
за ( вътр i = 0 ; i < intVector. размер ( ) ; ++ i )
cout << intVector [ i ] << ' ' ;
cout << ' \н ' ;
връщане 0 ;
}
Изход:
Следният изход ще се появи след изпълнение на горния код. Резултатът показва, че петте числа, взети от потребителя, са вмъкнати във вектора.
Пример-3: Вмъкване на стойности във вектор въз основа на конкретното условие
Създайте C++ файл със следния код, за да вмъкнете специфичните числа от масив от цели числа в празен вектор. В кода са декларирани празен вектор и масив от 10 цели числа. Цикълът „for“ е използван за повторение на всяка стойност от масива и вмъкване на числото във вектора с помощта на функцията push_back(), ако числото е по-малко от 30 или по-голямо от 60. Съдържанието на вектора ще бъде отпечатано с помощта на функция display_vector() след вмъкването.
//Включете необходимите библиотеки#include
#include <вектор>
използвайки пространство от имена std ;
//Показване на вектора
невалиден дисплей_вектор ( вектор < вътр > числа )
{
//Отпечатайте стойностите на вектора с помощта на цикъл
за ( Автоматичен той = числа. започвам ( ) ; той ! = числа. край ( ) ; той ++ )
cout << * той << ' ' ;
//Добавяне на нов ред
cout << ' \н ' ;
}
вътр основен ( )
{
//Деклариране на цяло числов вектор
вектор < вътр > intVector ;
//Деклариране на масив от числа
вътр myArray [ 10 ] = { 9 , Четири пет , 13 , 19 , 30 , 82 , 71 , петдесет , 35 , 42 } ;
/*
Повторете цикъла, за да прочетете всеки елемент от масива
и вмъкнете тези стойности във вектора
които са по-малки от 30 и по-големи от 60
използвайки функцията push_back().
*/
за ( вътр аз = 0 ; аз < 10 ; аз ++ ) {
ако ( myArray [ аз ] < 30 || myArray [ аз ] > 60 )
intVector. избутвам ( myArray [ аз ] ) ;
}
cout << 'Стойностите на вектора след вмъкване: ' << endl ;
дисплей_вектор ( intVector ) ;
връщане 0 ;
}
Изход:
Следният изход ще се появи след изпълнение на горния код. Резултатът показва, че числата 9, 13, 19, 82 и 71 са вмъкнати във вектора.
Заключение:
В C++ съществуват много функции за вмъкване на данни в началото или в края или във всяка конкретна позиция на вектора, като например push_front(), insert() и т.н. Използването на функцията push_back() ще бъде изчистено след практикуване на примерите, показани в този урок .