Hvordan bruke rekkeviddebasert for loop i C++

Hvordan Bruke Rekkeviddebasert For Loop I C



C++ programmeringsspråket rekkeviddebasert for loop er en relativt ny funksjon som først ble introdusert i C++11. Rekkeviddebasert for løkker utføre en løkke over rekkevidde. De fungerer med enhver beholder som har en iterator, inkludert matriser, vektorer, kart, sett og til og med brukerdefinerte typer som implementerer de nødvendige operasjonene.

Syntaks for områdebasert for sløyfe

EN rekkeviddebasert for loop har en veldig grei syntaks. Den består av løkkevariabelen, beholderen eller området som skal itereres gjennom, og et kolon.







til ( range_declaration : range_expression ) loop uttalelse



range_declaration: range-declaration er deklarasjonen av en variabel med samme type som range-component-uttrykkets elementer. For automatisk å bestemme typen komponenter i en områdeuttrykk , er auto nøkkelordet ofte brukt.



range_expression: Hvert uttrykk som representerer en liste over elementer er en områdeuttrykk .





loop statement: Brødteksten til en for-løkke består av ett eller flere utsagn som må gjentas til slutten av områdeuttrykket.

Metoder for å utføre rekkeviddebasert for sløyfe

Det er tre metoder som kan brukes til rekkeviddebasert for loop .



Metode 1: Bruk av matriser

Rekkeviddebasert for loop kan kjøres ved hjelp av matriser som dette.

#include
bruker navneområde std;

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

I koden ovenfor ble en heltallsmatrise kalt numArray initialisert. Deretter ble elementene i numArray skrevet ut ved hjelp av en rekkeviddebasert for loop .

Produksjon

Metode 2: Bruke vektorer

Rekkeviddebasert for loop kan kjøres ved hjelp av vektorer som dette.

#include
#inkluder
bruker navneområde std;
int main ( )
{
int x;
vektor < int > i = { 1 , 2 , 3 , 4 , 5 } ;
til ( int x : v )
{
cout << x << ' ' ;
}
komme tilbake 0 ;
}

I koden ovenfor kalles en vektor i ble initialisert. Her ble elementene i vektor v skrevet ut ved å bruke a rekkeviddebasert for loop.

Produksjon

Metode 3: Erklær Collection Inside Loop

Rekkeviddebasert for loop kan også deklareres inne i løkken. Den fungerer på samme måte som en faktisk matrise eller vektor ville gjort.

#include

bruker navneområde std;
int main ( ) {
til ( int n: { 5 , 10 , femten , tjue , 25 } ) {
cout << n << ' ' ;
}
komme tilbake 0 ;
}

I koden ovenfor blir samlingen deklarert inne i selve løkken og deretter skrevet ut.

Produksjon

Fordeler og ulemper med rekkeviddebasert for løkke

Rekkeviddebasert for loop har flere fordeler enn konvensjonelle til løkker på flere måter, spesielt når du arbeider med containere. Ettersom loop-variabelen er definert inne i loopen og rekkevidden er eksplisitt angitt, gjør det koden mye kortere og lettere å forstå. De er også sikrere, siden det ikke er nødvendig å bekymre deg for enkeltstående feil eller andre indekseringsfeil. De er mer tilpasningsdyktige siden de kan bruke hvilken som helst beholder, uavhengig av type eller størrelse. De rekkeviddebasert for loop har flere fordeler, en av dem er at den gjør koden vår renere og enklere å forstå.

Rekkeviddebasert for løkker har imidlertid visse begrensninger. Siden løkkevariabelen er en kopi av eller en referanse til elementet i stedet for det faktiske elementet, kan den ikke brukes til å endre beholderens elementer. Siden hele spekteret hele tiden itereres gjennom, kan vi ikke hoppe over noen elementer eller iterere over bare en del av dataene.

Konklusjon

Rekkeviddebasert for loop er en kraftig og allsidig funksjon i programmeringsspråket C++. Sammenlignet med konvensjonelle sløyfer, tilbyr de forbedret sikkerhet og fleksibilitet sammen med en klar og lesbar tilnærming til å iterere gjennom beholdere og redusere kode. Rekkeviddebasert for loop er et must å lære for C++-programmerere.