logo

STD::array C++:ssa

Taulukko on kokoelma homogeenisia objekteja ja tämä matriisisäiliö on määritelty vakiokokoisille taulukoille tai (staattinen koko). Tämä säilö kiertyy kiinteän kokoisten taulukoiden ympärille, ja sen koon tiedot eivät häviä, kun se ilmoitetaan osoittimelle.
Jotta voisimme käyttää taulukoita, meidän on sisällytettävä taulukon otsikko:

 #include>

Katsotaanpa esimerkkiä.



CPP






// CPP program to demonstrate working of array> #include> #include> #include> #include> #include> using> namespace> std;> int> main() {> >// construction uses aggregate initialization> >// double-braces required> >array<>int>, 5>or1{{3, 4, 5, 1, 2}};> >array<>int>, 5>ar2 = {1, 2, 3, 4, 5};> >array ar3 = {{string(>'a'>),>'b'>}};> >cout <<>'Sizes of arrays are'> << endl;> >cout << ar1.size() << endl;> >cout << ar2.size() << endl;> >cout << ar3.size() << endl;> > >cout <<>' Initial ar1 : '>;> >for> (>auto> i : ar1)> >cout << i <<>' '>;> >// container operations are supported> >sort(ar1.begin(), ar1.end());> >cout <<>' sorted ar1 : '>;> >for> (>auto> i : ar1)> >cout << i <<>' '>;> >// Filling ar2 with 10> >ar2.fill(10);> >cout <<>' Filled ar2 : '>;> >for> (>auto> i : ar2)> >cout << i <<>' '>;> >// ranged for loop is supported> >cout <<>' ar3 : '>;> >for> (>auto> &s : ar3)> >cout << s <<>' '>;> >return> 0;> }>



>

>

Lähtö:

Sizes of arrays are 5 5 2 Initial ar1 : 3 4 5 1 2 sorted ar1 : 1 2 3 4 5 Filled ar2 : 10 10 10 10 10 ar3 : a b>

Tämä C++ STL-taulukko on eräänlainen peräkkäinen kontti, eikä sitä käytetä kovinkaan tavallisessa ohjelmoinnissa tai kilpailevassa ohjelmoinnissa, mutta joskus sen jäsentoiminto tarjoaa sille yläreunan tavalliseen normaaliin taulukkoon, jota käytämme jokapäiväisessä elämässämme. Joten keskustelemme joistakin tärkeistä jäsenfunktioista, joita käytetään tällaisen taulukon kanssa:

Array Templaten jäsentoiminnot ovat seuraavat:

Syntaksi: taulukko arr_name;

a) [ ] Operaattori : Tämä on samanlainen kuin normaali taulukko, käytämme sitä päästäksemme elementtivarastoon indeksillä 'i'.

Esim:

C++




java sopimusten nimeäminen

#include> #include> using> namespace> std;> int> main() {> >array <>char> , 3>arr={>'G'>,>'f'>,>'G'>};> >cout< ' '< return 0; }>

>

>

Lähtö

G G>

b) etu ( ) ja taka ( ) -toiminto: Näitä menetelmiä käytetään pääsemään suoraan taulukon ensimmäiseen ja viimeiseen elementtiin.

C++




#include> #include> using> namespace> std;> int> main() {> >array <>int> , 3>arr={>'G'>,>'f'>,>'G'>};>// ASCII val of 'G' =71> >cout< ' '< return 0; }>

>

>

Lähtö

71 71>

c) swap( ) -funktio: Tätä swap-toimintoa käytetään kahden taulukon sisällön vaihtamiseen.

Esim:

C++




#include> #include> using> namespace> std;> int> main() {> >array <>int> , 3>arr={>'G'>,>'f'>,>'G'>};>// ASCII val of 'G' =71> >array <>int> , 3>arr1={>'M'>,>'M'>,>'P'>};>// ASCII val of 'M' = 77 and 'P' = 80> >arr.swap(arr1);>// now arr = {M,M,P}> >cout< ' '< return 0; }>

>

>

Lähtö

77 80>

d) tyhjä( )-funktio: Tätä funktiota käytetään tarkistamaan, onko ilmoitettu STL-taulukko tyhjä vai ei, jos se on tyhjä, se palauttaa true else false.

Esim:

C++




#include> #include> using> namespace> std;> int> main() {> >array <>int> , 3>arr={>'G'>,>'f'>,>'G'>};>// ASCII val of 'G' =71> >array <>int> , 3>arr1={>'M'>,>'M'>,>'P'>};>// ASCII val of 'M' = 77 and 'P' = 80> >bool> x = arr.empty();>// false ( not empty)> >cout< return 0; }>

>

>

Lähtö

false>

e) at( )-funktio: Tätä toimintoa käytetään pääsyyn tiettyyn paikkaan tallennettuun elementtiin, jos yritämme päästä käsiksi elementtiin, joka on taulukon koon rajojen ulkopuolella, se heittää poikkeuksen.

Esim:

C++




#include> #include> using> namespace> std;> int> main() {> >array <>int> , 3>arr={>'G'>,>'f'>,>'G'>};>// ASCII val of 'G' =71> >array <>int> , 3>arr1={>'M'>,>'M'>,>'P'>};>// ASCII val of 'M' = 77 and 'P' = 80> >cout<< arr.at(2) <<>' '> << arr1.at(2);> >//cout<< arr.at(3); // exception{Abort signal from abort(3) (SIGABRT)}> >return> 0;> }>

>

>

Lähtö

71 80>

f) fill( ) -funktio: Tätä käytetään erityisesti alustamaan tai täyttämään kaikki taulukon indeksit samalla arvolla.

Esim:

C++


kuinka sulkea kehittäjätila



#include> #include> using> namespace> std;> int> main() {> >array <>int> , 5>arr;> >arr.fill(1);> >for>(>int> i: arr)> >cout< ' '; return 0; }>

>

>

Lähtö

1 1 1 1 1>

g) size( ) tai max_size( ) ja sizeof( ) -funktio: Sekä kokoa( ) että max_size( ) käytetään taulukon indeksien enimmäismäärän saamiseksi, kun taas sizeof( ) -funktiota käytetään taulukon kokonaiskoon tavuina.

C++




#include> #include> using> namespace> std;> int> main() {> >array <>int> , 10>arr;>> cout< ' '; // total num of indexes cout< ' '; // total num of indexes cout<

>

>

Lähtö

10 10 40>

h) tiedot( ): Tämä funktio palauttaa osoittimen taulukkoobjektin ensimmäiseen elementtiin. Koska taulukon elementit on tallennettu vierekkäisiin muistipaikkoihin. Tämä data()-funktio palauttaa meille merkkijono-/merkkityyppisen objektin perusosoitteen.

Esim:

C++




#include> #include> #include> using> namespace> std;> int> main ()> {> >const> char>* str =>'techcodeview.com'>;> >array<>char>,13>arr;> >memcpy> (arr.data(),str,13);> >cout << arr.data() <<>' '>;> >return> 0;> }>

>

>


Lähtö

techcodeview.com>

I) cbegin( ) ja cend( ): mene tähän gfg-linkkiin: Click_me