Thuis
Contacten

    Hoofdpagina


Programmeren in C++ voor beginners

Dovnload 5.04 Mb.

Programmeren in C++ voor beginners



Pagina14/49
Datum25.10.2017
Grootte5.04 Mb.

Dovnload 5.04 Mb.
1   ...   10   11   12   13   14   15   16   17   ...   49

Scope van variabelen

Elke variabele heeft een levensduur, ook wel scope genoemd. Een variabele bestaat pas nadat deze gedeclareerd is en bestaat tot een accolade.
void __fastcall TForm1::Button1Click(TObject *Sender)

{

//Hier bestaat 's' nog niet


String s = Button1->Caption;
//Hier bestaat 's'
} //'s' gaat 'out of scope'
Elke variabele naam moet uniek zijn in zijn eigen scope. Onderstaande code is dus niet mogelijk:
{ //Een scope, bijvoorbeeld een OnClick Event
String s = Button1->Caption;

String s = Button1->Caption; //ERROR: s bestaat al


}




Een variabele kan ook globaal zijn: dan kan deze overal vanuit het programma aangeroepen worden. Dat is heel gemakkelijk.






Minimalizeer het gebuik van globale variabelen. Het maakt je programma onoverzichtelijker en moeilijker te debuggen.

Onderstaand voorbeeld mag wel:


void __fastcall TForm1::Button1Click(TObject *Sender)

{

String s = Button1->Caption;


} //Bovenstaande 's' gaat hier out of scope
void __fastcall TForm1::Button2Click(TObject *Sender)

{

//Nog geen 's' bekend


String s = Button2->Caption;
//Nu is de 's' van deze scope bekend
} //Deze tweede 's' gaat hier out of scope
Een scope kun je maken met twee accoladen. En een if statement heeft twee accolades. Daarom is onderstaand voorbeeld legaal:
if (Button1->Tag == 1)

{

String s = Button1->Caption;


Form1->Caption = s;

}

else

{

String s = Button2->Caption;


Form1->Caption = s;

}
//Form1->Caption = s; //ERROR: 's' bestaat hier niet meer!






Declareer je variabelen zo lokaal mogelijk, oftewel: zorg dat je variabelen zo kort mogelijke scope hebben.
1   ...   10   11   12   13   14   15   16   17   ...   49


Dovnload 5.04 Mb.