Mi az std::array a C++-ban
A C++ nyelven egy konténer, amely az ún std::tömb rögzített számú azonos adattípus tárolására szolgál. A std::tömb A tároló alternatívát kínál a C-stílusú tömbökhöz, mivel biztonságosabb, könnyebben használható és jobb a teljesítménye.
Az osztály, amely a C++ szabványos könyvtárának összetevője, praktikus és hatékony megközelítést kínál az azonos adattípusú elemek tárolására és elérésére. Mivel a mérete std::tömb Fordítási időben ismert, a dinamikus skálázás futási többletköltsége csökken. A tömb méretét a template paraméter és a tételek határozzák meg std::tömb összefüggő emlékezetben őrzik.
Az std::array deklarálása C++ nyelven
Kijelentheti std::tömb mint:
std :: sor < int , 4 > arr ;
A fenti szintaxis egy nevű tömböt deklarál arr fix 4 elemes mérettel, ahol minden elem int típusú.
Példa az std::tömbre
1. példa: A következő egy egyszerű példa a kezdeti a std::tömb C++ nyelven:
#include
#include
int fő- ( ) {
std :: sor < int , 4 > arr = { 4 , 6 , 2 , 1 } ;
számára ( int én = 0 ; én < arr. méret ( ) ; én ++ ) {
std :: cout << arr [ én ] << ' ' ;
}
std :: cout << std :: endl ;
Visszatérés 0 ;
}
Kimenet
2. példa: Használhatod is std::tömb egy tömb elemeinek eléréséhez. A kód alább található:
#include#include
int fő- ( ) {
std :: sor < int , 3 > arr = { 1 , 2 , 3 } ;
std :: cout << 'Az első elem' << arr [ 0 ] << std :: endl ;
std :: cout << 'A második elem' << arr. nál nél ( 1 ) << std :: endl ;
std :: cout << 'A harmadik elem' << arr. vissza ( ) << std :: endl ;
Visszatérés 0 ;
}
Kimenet
3. példa: A következő példa egy elem kinyomtatását mutatja be egy tömbből egy adott helyen a használatával std::tömb C++ nyelven.
#include#include
int fő- ( )
{
std :: sor < int , 4 > arr = { 4 , 6 , 2 , 1 } ;
std :: cout << arr [ 3 ] << std :: endl ;
Visszatérés 0 ;
}
Kimenet
Az std::array előnyei C++-ban
A hagyományos C++ tömböktől eltérően, std::tömb funkciók széles skáláját kínálja.
1: Intuitív szintaxis
std::tömb intuitívabb szintaxissal rendelkezik az inicializáláshoz, és inicializálólista segítségével inicializálható. Ez tömörebb és olvashatóbb módot biztosít a tömb inicializálására.
2: Érvként elfogadva
std::tömb argumentumként adhatók át függvényeknek, és függvényekből is visszaadhatók.
3: Memóriakezelés
A használat egyik legfontosabb előnye std::tömb egyszerű és hatékony memóriakezelést biztosít. Ez azt jelenti, hogy nincs szükség manuális memóriafoglalásra vagy felszabadításra.
4: Automatikus kötés-ellenőrzés
A tény, hogy a std::tömb Az egyik legfontosabb előnye a C-stílusú tömbökön keresztüli automatikus határellenőrzés. Ez azt jelenti, hogy ha a program a tömb meghatározott tartományán kívüli elemhez próbál hozzáférni, a fordító hibát fog produkálni. A puffertúlcsordulás, a szegmentációs hibák és a memóriaszivárgás csak néhány a gyakori programozási problémák közül, amelyeket a kötött ellenőrzés segíthet elkerülni.
5: Hasznos funkciókat biztosít
std::tömb számos praktikus funkciót kínál, például iterátorokat, size(), front(), back(), fill() és at(), ami egy másik előny. Ezek a funkciók megkönnyítik a tömbelemek kezelését anélkül, hogy bonyolult és hibára hajlamos kódra lenne szükség. Az iterátorok például egyszerűvé teszik a navigálást a tömb elemei között, a fill() metódus pedig lehetővé teszi, hogy egyetlen értéket adjon meg a tömb teljes elemkészletéhez.
Következtetés
C++ nyelven a std::tömb Az osztály praktikus módszert kínál a rögzített méretű tömbökkel való munkavégzéshez, valamint néhány hasznos funkciót, valamint a típus- és tartománybiztonság előnyeit. Az inicializáláshoz és a határellenőrzéshez világosabb, érthetőbb szintaxist biztosít, ami segíthet elkerülni sok tipikus programozási hibát. Az olyan helyzetek többségében, amikor fix méretű tömböket kell használni, az std::array használata javasolt, mivel ez egy naprakészebb és biztonságosabb módszert kínál a kezelésükhöz.