Hvad er std::array i C++?

Hvad Er Std Array I C



C++ giver en række datastrukturer til at gemme og manipulere samlinger af elementer. En sådan datastruktur er std::array , som blev introduceret i C++11 standardbiblioteket. Gennem denne artikel vil du lære om std::array, dets syntaks, et eksempel og dets fordele i C++.

Hvad er std::array i C++

I C++, en beholder kendt som std::array bruges til at opbevare et fast antal af samme datatype-elementer. Det std::array container giver et alternativ til C-stil arrays, da det er sikrere, nemmere at bruge og har bedre ydeevne.

Klassen, som er en komponent i C++’s standardbibliotek, tilbyder en praktisk og effektiv tilgang til at gemme og tilgå elementer med samme datatype. Fordi størrelsen af std::array er kendt på kompileringstidspunktet, reduceres runtime overhead af dynamisk skalering. Størrelsen af ​​arrayet indstilles af skabelonparameteren og elementerne i std::array opbevares i sammenhængende hukommelse.







Erklær std::array i C++

Du kan erklære std::array synes godt om:



std :: array < int , 4 > arr ;

Ovenstående syntaks erklærer et array med navn arr med en fast størrelse på 4 elementer, hvor hvert element er af typen int.



Eksempel på std::array

Eksempel 1: Det følgende er et simpelt eksempel til indledning af a std::array i C++:





#include

#include

int vigtigste ( ) {

std :: array < int , 4 > arr = { 4 , 6 , 2 , 1 } ;

til ( int jeg = 0 ; jeg < arr. størrelse ( ) ; jeg ++ ) {

std :: cout << arr [ jeg ] << ' ' ;

}

std :: cout << std :: endl ;

Vend tilbage 0 ;

}

Produktion



Eksempel 2: Du kan også bruge std::array for at få adgang til elementerne i et array. Koden er angivet nedenfor:

#include

#include

int vigtigste ( ) {

std :: array < int , 3 > arr = { 1 , 2 , 3 } ;

std :: cout << 'Det første element er' << arr [ 0 ] << std :: endl ;

std :: cout << 'Det andet element er' << arr. ( 1 ) << std :: endl ;

std :: cout << 'Det tredje element er' << arr. tilbage ( ) << std :: endl ;

Vend tilbage 0 ;

}

Produktion

Eksempel 3: Følgende eksempel viser udskrivning af et element fra et array på en bestemt position vha std::array i C++.

#include

#include

int vigtigste ( )

{

std :: array < int , 4 > arr = { 4 , 6 , 2 , 1 } ;

std :: cout << arr [ 3 ] << std :: endl ;

Vend tilbage 0 ;

}

Produktion

Fordele ved std::array i C++

I modsætning til traditionelle arrays i C++, std::array tilbyder en række funktioner.

1: Intuitiv syntaks

std::array har en mere intuitiv syntaks til initialisering og kan initialiseres ved hjælp af en initialiseringsliste. Dette giver en mere kortfattet og læsbar måde at initialisere arrayet på.

2: Godkendt som argumenter

std::array kan sendes som argumenter til funktioner, og det er også muligt at returnere dem fra funktioner.

3: Hukommelsesstyring

En af de vigtigste fordele ved at bruge std::array er, at det giver nem og effektiv hukommelseshåndtering. Det betyder, at der ikke er behov for manuel hukommelsesallokering eller deallokering.

4: Automatisk grænsekontrol

Det faktum, at std::array tilbyder automatiseret grænsekontrol over C-stil arrays er en af ​​dens vigtigste fordele. Dette betyder, at hvis programmet forsøger at få adgang til et element uden for arrayets definerede område, vil compileren producere en fejl. Bufferoverløb, segmenteringsfejl og hukommelseslækager er blot nogle få af de hyppige programmeringsproblemer, som bundet kontrol kan hjælpe dig med at undgå.

5: Giver nyttige funktioner

std::array tilbyder flere praktiske funktioner, såsom iteratorer, size(), front(), back(), fill() og at(), hvilket er en anden fordel. Disse funktioner gør det nemmere at manipulere array-elementerne uden behov for kompleks og fejltilbøjelig kode. Iteratorer gør det for eksempel nemt at navigere mellem arrayets elementer, og fill()-metoden lader dig give en enkelt værdi til arrayets hele elementsæt.

Konklusion

I C++ er std::array klasse tilbyder en praktisk måde at arbejde med arrays i fast størrelse sammen med nogle nyttige funktioner og fordelene ved type- og rækkeviddesikkerhed. Til initialisering og grænsekontrol giver det en klarere, mere forståelig syntaks, som kan hjælpe med at undgå mange typiske programmeringsfejl. I de fleste situationer, hvor arrays med fast størrelse skal bruges, tilrådes brugen af ​​std::array, da det giver en mere opdateret og sikker metode til at manipulere dem.