Silmukan alueen käyttäminen C++:ssa

Silmukan Alueen Kayttaminen C Ssa



C++ ohjelmointikieli aluepohjainen silmukalle on suhteellisen uusi ominaisuus, joka esiteltiin ensimmäisen kerran C++11:ssä. Aluepohjainen silmukoille suorittaa silmukan alueen yli. Ne toimivat minkä tahansa säilön kanssa, jossa on iteraattori, mukaan lukien taulukot, vektorit, kartat, joukot ja jopa käyttäjän määrittämät tyypit, jotka toteuttavat tarvittavat toiminnot.

Aluepohjaisen silmukan syntaksi

A aluepohjainen silmukalle on hyvin suoraviivainen syntaksi. Se koostuu silmukkamuuttujasta, säiliöstä tai alueesta, jonka läpi iteroidaan, ja kaksoispisteestä.







varten ( range_declaration : range_expression ) silmukkalause



range_declaration: range-declaration on muuttujan ilmoitus, jonka tyyppi on sama kuin aluekomponenttilausekkeen elementit. Määrittääksesi automaattisesti komponenttien tyypin a range_expression , automaattista avainsanaa käytetään usein.



range_expression: Jokainen lauseke, joka edustaa elementtiluetteloa, on a range_expression .





silmukkalause: For-silmukan runko koostuu yhdestä tai useammasta lauseesta, jotka on toistettava range_expression loppuun asti.

Menetelmät silmukan aluepohjaisen suorittamiseen

On olemassa kolme menetelmää, joita voidaan käyttää aluepohjainen silmukalle .



Tapa 1: Matriisien käyttäminen

Aluepohjainen silmukalle voidaan suorittaa käyttämällä tällaisia ​​taulukoita.

#include
käyttäen nimiavaruutta std;

int main ( ) {
int numArray [ ] = { 6 , 7 , 8 , 9 , 10 } ;
varten ( int n : numArray ) {
cout << n << ' ' ;
}
palata 0 ;
}

Yllä olevassa koodissa alustettiin kokonaislukutaulukko nimeltä numArray. Sitten numArray-elementit tulostettiin käyttämällä a aluepohjainen silmukalle .

Lähtö

Menetelmä 2: Vektorien käyttö

Aluepohjainen silmukalle voidaan ajaa käyttämällä tällaisia ​​vektoreita.

#include
#sisällytä
käyttäen nimiavaruutta std;
int main ( )
{
int x;
vektori < int > in = { 1 , 2 , 3 , 4 , 5 } ;
varten ( int x : v )
{
cout << x << ' ' ;
}
palata 0 ;
}

Yllä olevassa koodissa vektori kutsutaan sisään alustettiin. Tässä vektorin v elementit tulostettiin käyttämällä a aluepohjainen silmukalle.

Lähtö

Tapa 3: Ilmoita keräys silmukan sisällä

Aluepohjainen silmukalle voidaan ilmoittaa myös silmukan sisällä. Se toimii samalla tavalla kuin todellinen matriisi tai vektori.

#include

käyttäen nimiavaruutta std;
int main ( ) {
varten ( int n: { 5 , 10 , viisitoista , kaksikymmentä , 25 } ) {
cout << n << ' ' ;
}
palata 0 ;
}

Yllä olevassa koodissa kokoelma ilmoitetaan itse silmukan sisällä ja tulostetaan sitten.

Lähtö

Silmukalle perustuvan valikoiman edut ja haitat

Aluepohjainen silmukalle on enemmän etuja kuin perinteisellä varten silmukoita useilla tavoilla, erityisesti konttien kanssa työskennellessä. Koska silmukkamuuttuja määritellään silmukan sisällä ja alue on nimenomaisesti ilmoitettu, se tekee koodista paljon lyhyemmän ja helpommin ymmärrettävän. Ne ovat myös turvallisempia, koska ei tarvitse huolehtia yksittäisistä virheistä tai muista indeksointivirheistä. Ne ovat mukautuvampia, koska ne voivat käyttää mitä tahansa astiaa sen tyypistä tai koosta riippumatta. The aluepohjainen silmukalle on useita etuja, joista yksi on se, että se tekee koodistamme selkeämmän ja helpommin ymmärrettävän.

Aluepohjainen silmukoille on kuitenkin tiettyjä rajoituksia. Koska silmukkamuuttuja on kopio tai viittaus elementtiin eikä varsinaiseen elementtiin, sitä ei voida käyttää säilön elementtien muuttamiseen. Koska koko alue iteroidaan jatkuvasti läpi, emme voi ohittaa mitään elementtejä tai iteroida vain osaa tiedoista.

Johtopäätös

Aluepohjainen silmukalle on C++-ohjelmointikielen tehokas ja monipuolinen ominaisuus. Verrattuna perinteisiin silmukoille, ne tarjoavat parempaa turvallisuutta ja joustavuutta sekä selkeän ja luettavan lähestymistavan konttien läpi toistamiseen ja koodin vähentämiseen. Aluepohjainen silmukalle on pakollinen oppiminen C++-ohjelmoijille.