Kaj je std::array v C++?

Kaj Je Std Array V C



C++ ponuja različne podatkovne strukture za shranjevanje in upravljanje zbirk elementov. Ena taka podatkovna struktura je std::matrika , ki je bil predstavljen v standardni knjižnici C++11. V tem članku boste spoznali std::array, njegovo sintakso, primer in njegove prednosti v C++.

Kaj je std::array v C++

V C++ je vsebnik, znan kot std::matrika se uporablja za shranjevanje fiksnega števila istih elementov podatkovnega tipa. The std::matrika kontejner ponuja alternativo nizom v slogu C, saj je varnejši, lažji za uporabo in ima boljšo zmogljivost.

Razred, ki je sestavni del standardne knjižnice C++, ponuja praktičen in učinkovit pristop za shranjevanje in dostop do elementov z istim tipom podatkov. Ker je velikost std::matrika znano v času prevajanja, se zmanjšajo stroški izvajalnega časa dinamičnega skaliranja. Velikost matrike je nastavljena s parametrom predloge, elementi pa std::matrika se hranijo v neprekinjenem pomnilniku.







Deklarirajte std::array v C++

Lahko izjavite std::matrika kot:



std :: niz < int , 4 > prir ;

Zgornja sintaksa deklarira matriko z imenom prir s fiksno velikostjo 4 elementov, kjer je vsak element tipa int.



Primer std::array

Primer 1: Sledi preprost primer začetnice a std::matrika v C++:





#include

#include

int glavni ( ) {

std :: niz < int , 4 > prir = { 4 , 6 , 2 , 1 } ;

za ( int jaz = 0 ; jaz < prir. velikost ( ) ; jaz ++ ) {

std :: cout << prir [ jaz ] << ' ' ;

}

std :: cout << std :: konec ;

vrnitev 0 ;

}

Izhod



Primer 2: Uporabite lahko tudi std::matrika za dostop do elementov v matriki. Koda je navedena spodaj:

#include

#include

int glavni ( ) {

std :: niz < int , 3 > prir = { 1 , 2 , 3 } ;

std :: cout << 'Prvi element je' << prir [ 0 ] << std :: konec ;

std :: cout << 'Drugi element je' << prir. pri ( 1 ) << std :: konec ;

std :: cout << 'Tretji element je' << prir. nazaj ( ) << std :: konec ;

vrnitev 0 ;

}

Izhod

Primer 3: Naslednji primer prikazuje tiskanje elementa iz matrike na določenem mestu z uporabo std::matrika v C++.

#include

#include

int glavni ( )

{

std :: niz < int , 4 > prir = { 4 , 6 , 2 , 1 } ;

std :: cout << prir [ 3 ] << std :: konec ;

vrnitev 0 ;

}

Izhod

Prednosti std::array v C++

Za razliko od tradicionalnih nizov v C++, std::matrika ponuja vrsto funkcij.

1: Intuitivna sintaksa

std::matrika ima bolj intuitivno sintakso za inicializacijo in ga je mogoče inicializirati s seznamom inicializatorjev. To zagotavlja bolj jedrnat in berljiv način inicializacije matrike.

2: Sprejeto kot argumenti

std::matrika se lahko posredujejo kot argumenti funkcijam, prav tako jih je mogoče vrniti iz funkcij.

3: Upravljanje pomnilnika

Ena od ključnih prednosti uporabe std::matrika je, da omogoča preprosto in učinkovito upravljanje pomnilnika. To pomeni, da ni potrebe po ročnem dodeljevanju ali sprostitvi pomnilnika.

4: Samodejno preverjanje vezave

Dejstvo, da je std::matrika ponuja samodejno preverjanje meja nad nizi v slogu C, kar je ena njegovih ključnih prednosti. To pomeni, da če program poskuša dostopati do elementa zunaj definiranega obsega matrike, bo prevajalnik povzročil napako. Prelivanje medpomnilnika, napake pri segmentaciji in uhajanje pomnilnika je le nekaj pogostih programskih težav, ki se jim lahko izognete s preverjanjem vezave.

5: Zagotavlja uporabne funkcije

std::matrika ponuja več priročnih funkcij, kot so iteratorji, size(), front(), back(), fill() in at(), kar je še ena prednost. Te funkcije olajšajo manipulacijo elementov polja brez potrebe po zapleteni kodi, ki je nagnjena k napakam. Iteratorji, na primer, olajšajo krmarjenje med elementi matrike, metoda fill() pa vam omogoča, da zagotovite eno samo vrednost celotnemu naboru elementov matrike.

Zaključek

V C++ je std::matrika ponuja praktičen način za delo z nizi fiksne velikosti, skupaj z nekaterimi uporabnimi funkcijami in prednostmi varnosti tipa in obsega. Za inicializacijo in preverjanje meja zagotavlja jasnejšo in bolj razumljivo sintakso, s katero se lahko izognete številnim tipičnim napakam pri programiranju. Za večino situacij, ko je treba uporabiti polja s fiksno velikostjo, je priporočljiva uporaba std::array, saj zagotavlja bolj posodobljen in varen način za njihovo upravljanje.