A dinamikus tömb C ++ vektor használatával valósítható meg. Az elemeket különböző módon lehet hozzáadni a vektorhoz. A push_back () függvény az egyik módja annak, hogy új elemet illesszünk be a vektor végébe, ami 1 -gyel növeli a vektor méretét. Ez a funkció akkor hasznos, ha egy elemet kell hozzáadni a vektorhoz. Ha a vektor adattípusa nem támogatja a függvény argumentuma által átadott értéket, akkor kivétel keletkezik, és az adatok nem kerülnek beillesztésre. Ebben az oktatóanyagban bemutattuk az adatok vektorba való beillesztésének módját a push_back () függvénnyel.
Szintaxis:
vektor::visszavet(érték_típus n);Az n értéke beillesztésre kerül a vektor végére, ha a vektor adattípusa támogatja az n adattípusát. Semmit nem ad vissza.
Előfeltétel:
Az oktatóanyag példáinak ellenőrzése előtt ellenőrizze, hogy a g ++ fordító telepítve van -e a rendszerben. Ha Visual Studio Code -ot használ, akkor telepítse a szükséges bővítményeket a C ++ forráskód fordításához a végrehajtható kód létrehozásához. Itt a Visual Studio Code alkalmazást használtuk a C ++ kód összeállításához és végrehajtásához. A push_back () függvény különböző felhasználási módjai az elem (ek) beillesztésére egy vektorba az oktatóanyag következő részében láthatók.
1. példa: Több elem hozzáadása a vektor végéhez
Hozzon létre egy C ++ fájlt a következő kóddal, hogy több elemet illesszen be a vektor végébe a push_back () függvénnyel. A kódban egy három karakterláncból álló vektor van definiálva. A push_back () függvényt háromszor hívtuk meg, hogy három elemet illesszünk be a vektor végébe. A vektor tartalma kinyomtatásra kerül az elemek behelyezése előtt és után.
// Tartalmazza a szükséges könyvtárakat
#befoglalni
#befoglalni
segítségével névtérórák;
intfő-()
{
// Deklarálja a karakterláncértékek vektorát
vektor<húr>madarak= {'Szürke papagáj','Gyémánt galamb','Koktél'};
költség << 'A vektor értékei a beszúrás előtt: n';
// Ismételje meg a vektort ciklus használatával az értékek kinyomtatásához
számára(intén= 0;én<madarak.méret(); ++én)
költség <<madarak[én] << '';
költség << ' n';
/ *
Adjon hozzá három értéket a vektor végén
a push_back () függvény használatával
* /
madarak.visszavet('Mayna');
madarak.visszavet('Papagájok');
madarak.visszavet('Kakadu');
költség << 'A vektor értékei a beszúrás után: n';
// Ismételje meg a vektort ciklus használatával az értékek kinyomtatásához
számára(intén= 0;én<madarak.méret(); ++én)
költség <<madarak[én] << '';
költség << ' n';
Visszatérés 0;
}
Kimenet:
A fenti kód végrehajtása után a következő kimenet jelenik meg. A kimenet azt mutatja, hogy három új elem került be a vektor végébe.
2. példa: Az értékeket bemenettel illessze be a vektorba
Hozzon létre egy C ++ fájlt a következő kóddal, és illessze be az elemet egy üres vektorba úgy, hogy értékeket vesz a felhasználótól, és használja a push_back () függvényt. A kódban üres egész adattípusú vektor került deklarálásra. Ezután a „for” ciklus 5 számot vesz el a felhasználótól, és a push_back () függvény segítségével beszúrja a számokat a vektorba. A vektor tartalma kinyomtatásra kerül a beillesztés után.
// Tartalmazza a szükséges könyvtárakat#befoglalni
#befoglalni
segítségével névtérórák;
intfő-()
{
// Egész vektor megadása
vektor<int>intVektor;
// Egész szám megadása
intszám;
költség << 'Írjon be 5 számot: n';
/ *
Ismételje meg a ciklust 5 -ször 5 egész érték beszúrásához
a vektorba a push_back () függvény segítségével
* /
számára( intén=0;én< 5;én++) {
gin >>szám;
intVektor.visszavet (szám);
}
költség << 'A vektor értékei a beszúrás után: n';
// Ismételje meg a vektort ciklus használatával az értékek kinyomtatásához
számára(intén= 0;én<intVektor.méret(); ++én)
költség <<intVektor[én] << '';
költség << ' n';
Visszatérés 0;
}
Kimenet:
A fenti kód végrehajtása után a következő kimenet jelenik meg. A kimenet azt mutatja, hogy a felhasználótól vett öt szám be lett helyezve a vektorba.
3. példa: Az értékeket illessze be vektorba a konkrét feltétel alapján
Hozzon létre egy C ++ fájlt a következő kóddal, és illessze be a számokat egy egész tömbből egy üres vektorba. A kódban üres vektor és 10 egész számból álló tömb van deklarálva. A 'for' ciklus a tömb minden értékének iterálására és a szám beillesztésére a vektorba a push_back () függvénnyel történik, ha a szám 30 -nál kisebb vagy 60 -nál nagyobb. A vektor tartalmát a display_vector () függvény a beillesztés után.
// Tartalmazza a szükséges könyvtárakat#befoglalni
#befoglalni
segítségével névtérórák;
// A vektor megjelenítése
üresdisplay_vector(vektor<int>nums)
{
// Nyomtassa ki a vektor értékeit ciklus segítségével
számára(autoő=nums.kezdődik();ő!=nums.vége() ;ő++)
költség << *ő<< '';
// Új sor hozzáadása
költség << ' n';
}
intfő-()
{
// Egész vektor megadása
vektor<int>intVektor;
// Szám tömb deklarálása
intmyArray[10] = { 9,Négy öt,13,19,30,82,71,ötven,35,42 };
/ *
Ismételje meg a ciklust a tömb minden elemének olvasásához
és illessze be ezeket az értékeket a vektorba
amelyek 30 -nál kisebbek és 60 -nál nagyobbak
a push_back () függvény használatával
* /
számára (intén=0;én< 10;én++)
ha(myArray[én] < 30
költség << 'A vektor értékei a beszúrás után:' <<endl;
display_vector(intVektor);
Visszatérés 0;
}
Kimenet:
A fenti kód végrehajtása után a következő kimenet jelenik meg. A kimenet azt mutatja, hogy a 9, 13, 19, 82 és 71 számokat beillesztették a vektorba.
Következtetés:
Sok funkció létezik a C ++ nyelvben, hogy adatokat illesszen be a vektor elejére vagy végére, vagy bármely adott pozícióba, például push_front (), insert (), stb. .