C ++ Tage tyren ved hornene - Del 21 Introduktion Dette er en del 21 af min serie, C ++ Tage tyren ved hornene. I denne del af serien, ser vi på det, der kaldes identifikator rækkevidde. En blok er et sæt af udsagn lukkede i krøllede parenteser, som er {og}. Spørgsmålet her er: Hvis en identifikator er erklæret uden for en blok vil det ses i blokken? På den anden side, hvis den erklæres i blokken, vil det ses uden for blokken? Blokke forekommer ikke vilkårligt i kode. Der er visse konstruktioner, der har blokke. Følgende konstruktioner har blokke: hvis for og funktion.
Vi har set alle disse konstruktioner. For resten af dette selvstudium, ser vi på det, hvis for og funktion konstruktioner og hvordan identifikator omfang anvendes på dem. Bemærk: Hvis du ikke kan se koden, eller hvis du tror noget mangler (brudt link, billede fraværende), bare kontakte mig på [email protected]. Det vil sige, kontakt mig for det mindste problem, du har om, hvad du læser.
Den hvis konstruere og Identifier Scope Læs og prøv følgende kode: #include hjælp namespace std; int main () {int Myint = 40; Hvis (25 == 25) {cout int herInt = 50; } //Cout returnere 0; } Den hvis betingelse er, hvis 25 er lig med 25. Nu denne betingelse vender altid tilbage sandt, og så hvis blok vil altid blive henrettet. Uden for hvis-blokken, er erklæret identifikationen, Myint og tildeles værdien, 40. Inde i hvis-blokken der er en erklæring til at udskrive (display) Myint. Denne identifikator blev erklæret uden for hvis blokken; hvis det ses i blokken, vil det blive udskrevet.
Hvis du har forsøgt den kode, du ville have bemærket, at værdien af Myint blev trykt. Nu inde i blokken blev et nyt id, herInt erklæret og havde en værdi tildelt. Uden for blokken, der er en kommentar. Denne kommentar er faktisk en erklæring indledes med kommentaren denotation, //. På grund af denne fortegn, er sætningen udføres ikke. Hvis du fjerner kommentar denotation og re-prøve koden, vil følgende forklaring følger: Den herInt id erklæres inde i if-blokken. Nu, hvis det ses uden for blokken, derefter på "sidste" erklæring (uden kommentar denotation) ville udskrive sin værdi.
Fjern //symbolet og prøv koden, hvis du ikke allerede har gjort det, og bemærk, at den sidste udskrift erklæring ikke ville arbejde, og du vil modtage en fejlmeddelelse, eller fejlmeddelelser påkompileringstidspunktet. Function konstruere og Identifier Anvendelsesområde Følgende kode er blevet skrevet ligner den ovenfor, men funktionen er ud
NET - C # - Hvordan at kode en genan…