Gültigkeitsbereich

Der Gültigkeitsbereich bezeichnet den Teil eines Programmes, in dem eine Deklaration gültig ist. Die wichtigste Unterscheidung ist zwischen lokalen Deklarationen (sie gelten nicht im ganzen Programm) und globaler Gültigkeit (sie gelten im ganzen Programm). Dies ist vor allem für Variablen und Konstanten interessant, aber auch Funktionen und Klassen können lokal deklariert werden - insbesondere bei großen Projekten mit mehreren Quelldateien kann dies relevant werden.

In der Regel wird der Gültigkeitsbereich durch eine Funktions- oder Klassendefinition bestimmt, aber auch Anweisungsblöcke erzeugen ihren eigenen Gültigkeitsbereich. So ist in

  for (int i=0; i<5; i++)
  {
    int k;
    k = i*i*i;
    meineFunktion(k);
  }
  k = 5;   // Fehler, falls k nicht andersweitig deklariert.
  i = 7;   // korrekt, da i auf dieser Ebene deklariert

die Variable k lokal definiert und außerhalb des Anweisungsblockes der Schleife nicht deklariert. Die Schleifenvariable i dagegen ist noch außerhalb des Anweisungsblockes und hat somit einen größeren Gültigkeitsbereich.