Ahhoz, hogy ezeket az adatstruktúrákat a memóriában manipulálhassuk bizonyos műveletek végrehajtásához, szükségünk van néhány adattípus-változóra, például egész számra, karakterekre, kettősre és így tovább.
Ez a cikk segít a vektorelemzésben, és bemutatja a különböző inicializálási folyamatokat a vektorokon (adatstruktúra) C++ nyelven.
Mi a Vector a C++ nyelvben
A C++-ban van egy speciális szabványos sablonkönyvtárunk, amely beépített vektorosztályú konténerekkel rendelkezik. A vektor olyan kollektív tárolás a memóriában, amely dinamikusan tárolja az elemeket az azonos adattípus korlátozásával.
Vektor egyszerű deklarációja C++ nyelven
vektor_kulcsszó < adat - típus > vektor_neve ( ) Bár a vektorok és a tömbök hasonlóak, a vektorok mérete idővel változhat. Az összetevők a megfelelő memóriaterületeken vannak tárolva. Ennek eredményeként a vektor mérete a futó alkalmazás követelményeitől függ. Hozzá kell adni egy fejlécfájlt az as preprocessor direktívával #include
A C++-ban különböző módszerek állnak rendelkezésre a vektor inicializálására, beszéljük meg ezeket egyenként:
1. módszer: A kitöltési módszer használatával a vektorosztályban
#include#include
névtér std használatával ;
int fő- ( )
{
vektor < int > Egy dolog ( 10 ) ;
tölt ( Egy dolog. kezdődik ( ) , Egy dolog. vége ( ) , 0 ) ;
számára ( int x : Egy dolog )
cout << x << ' ' ;
Visszatérés 0 ;
}
Ebben a kódban a kitöltési módszert használjuk, és létrehozunk egy vektort. A kitöltési módszernek két objektuma van, az egyik kezdődik, a második pedig a vége, ekkor adunk át egy értéket, amelyet ki kell nyomtatni.
Kimenet
2. módszer: A push_back() használatával az értékek egymás után tolására
#include#include
névtér std használatával ;
int fő- ( )
{
vektor < int > Egy dolog ;
Egy dolog. visszavet ( tizenegy ) ;
Egy dolog. visszavet ( 22 ) ;
Egy dolog. visszavet ( 30 ) ;
Egy dolog. visszavet ( 4 ) ;
cout << 'A vektorok összes eleme... \n ' ;
számára ( int én = 0 ; én < Egy dolog. méret ( ) ; én ++ )
{
cout << Egy dolog [ én ] << ' ' ;
}
Visszatérés 0 ;
}
Ebben a programban inicializáljuk az üres vektort, majd a push_back metódusnak 11,22,30-as értéket adunk újra és újra, és 4-et, és ciklus segítségével mutatjuk meg.
Kimenet
3. módszer: A vektor inicializálása és inicializálása egy lépésben
#include#include
névtér std használatával ;
int fő- ( ) {
vektor < int > Egy dolog { 6 , 22 , 70 , 4 , 9 , tizenegy } ;
számára ( int Val vel : Egy dolog )
cout << Val vel << ' ' ;
}
A fenti programpéldában a program a főfüggvénnyel indul, ahol egész típusú vektorokat inicializálunk, és ugyanabban a lépésben értékeket adunk nekik. Ezután a for ciklus segítségével mutatjuk meg az értékeket.
Kimenet
4. módszer: Tömb használatával
#include#include
névtér std használatával ;
int fő- ( )
{
vektor < int > Egy dolog { 4 , 9 , 10 , 66 , 8 , 7 } ;
számára ( int én : Egy dolog )
cout << én << ' ' ;
Visszatérés 0 ;
}
Ebben a kódban úgy inicializálunk egy vektort, hogy deklarálunk egy 6 elemből álló tömböt, majd kinyomtatjuk a cout-tal.
Kimenet
5. módszer: A már meglévő tömb használatával és másolásával
#include#include
névtér std használatával ;
int fő- ( )
{
int b [ ] = { 1 , 88 , 7 , 6 , Négy öt } ;
int a = mérete ( b ) / mérete ( b [ 0 ] ) ;
vektor < int > Egy dolog ( b , b + a ) ;
számára ( int számjegyek : Egy dolog )
cout << számjegyek << ' ' ;
Visszatérés 0 ;
}
Ebben a programban egy tömböt deklarálunk b-nek 5 értékkel, majd hozzáadjuk egy vektorhoz két paraméterrel; A tömb az első, a hosszúságú tömb pedig a második.
Kimenet
6. módszer: A konstruktor túlterhelés alkalmazása vektorban
#include#include
névtér std használatával ;
int fő- ( )
{
vektor < int > Egy dolog ( 10 , 9 ) ;
számára ( int x : Egy dolog )
cout << x << ' ' ;
Visszatérés 0 ;
}
A fenti példában egy konstruktor túlterheléses vektort használtunk, amely két paramétert fogad el: az egyik az érték ismétlődése, a második pedig a megjeleníteni kívánt számjegy, ezért a kimenet a következő.
Kimenet
Következtetés
A vektorok a szabványos sablonkönyvtárban (STL) vannak definiálva. A vektor használatához először a vektor fejlécét kell beillesztenünk a programba. Ebben az írásban különféle módokat láttunk a vektorok inicializálására C++ nyelven. A fejlesztő bármilyen módszert kiválaszthat igény szerint.