Lokale und globale Variablen. Anwendungsbereich.




c ++, lokale und globale Variablen, Der Umfang der Variablen, c ++ AnfängerFür das Verständnis der Lokalisierung Variablen wahrscheinlich mit einer Allegorie beginnen. Was “Gegend”? Diese Beschränkung der Kapazität Raum. Variable Umfang – dies ist der Teil des Codes (Funktion, Zyklus, Namespaces), in dem die Variable deklariert (Dinkel). Außerhalb dieses Bereichs – der Compiler sieht es nicht (es ist nicht verfügbar).

So stellt sich heraus, – Variablen wie im beschriebenen Funktionen, Sie können nicht im Ausland verwendet werden. Als Beispiel betrachten wir den folgenden Code:

Lassen Sie uns ein Beispiel für einen genaueren Blick. So haben wir eine Variable ich, jede Funktion im Programm beschrieben ist. Die Tragweite und Aktionen – das gesamte Programm ist nicht beschränkt auf. Und sobald sie “legitim” das gesamte Programm, in allen seinen Funktionen und Operatoren Blöcke, Gefangene {}, dann heißt es globale Variable.

Wie wir in dem Beispiel der Funktion gesehen Summe(), dass etwas tut. Es wird in der zweiten Variablen beschrieben – k. Sie hat bereits eine spezifische “Anmeldung” – Funktion. Darüber hinaus kann diese Variable nicht außerhalb der Funktion verwendet werden,. dh. wenn die Funktion Main() Ziel ist auch der Abschluss der k der Bildschirm, Compiler beginnt “schwören”. Es es einfach nicht einfach außerhalb der Funktion sehen Summe(). überprüfen:

Variable k er rief lokal, und ihre Anwendungsbereich definiert das Öffnen und Schließen Klammern Funktion Summe(){…}. Dann haben sie es nicht läuft, daher kann es nicht außerhalb dieser Funktion verwendet werden. Kompiliruem:

c ++, lokale und globale Variablen, Der Umfang der Variablen, c ++ Anfänger

jedoch, man muss berücksichtigen auch die, dass der Umfang an den Inneneinheiten erweitert. Betrachten wir zum Beispiel diesen Code:

Es manifestiert den Geltungsbereich:

  • global – i = 2 ihre;
  • Lokale in der Funktion – Variable k;
  • Lokale relativen for-Schleife() – zweite ich.

Obwohl, dass für hat seinen eigenen Anwendungsbereich, selbst für Member-Funktion Summe(). Und es bedeutet,, und alles darin ist, Es unterliegt dem lokalen Bereich der Funktion. dh. alle Variablen, Funktion in der gleichen Weise und in den eigentlichen Körper definiert für, die ermöglicht es dem Bediener zu arbeiten k += 1 (er ist k = k + 1 oder k ++).

Interessanter ist der Fall eines variablen ich, beschrieben in für. Trotz des Namens, identisch ist mit der globalen Variablen, wie oben beschrieben, das ist eine andere Variable.

Sobald ihre Zyklus gearbeitet, Variable ich, darin beschrieben, verliert seine Macht, oder mit anderen Worten – “veröffentlicht” von Aufgaben. Das ist kein Scherz – nur, dass der Speicher-Manager kommt. Wenn eine Variable beschrieben, Manager-Reserven unter ihrem Gedächtnis, und wenn ihr Anwendungsbereich endet – Dies gibt den Speicher. Speichermanager bei Marken, dass dieser Speicherplatz nicht von niemandem gehört, und es ist möglich, eine Aufzeichnung von anderen Daten zu geben,.

Um dies zu beheben ein anderes Licht primerchik:

Es beschreibt die Aussage Umfang Block, Limit {}, dh. zuerst cout Displays 2, weil der definierte Block von Anweisungen, in denen es funktioniert cout. Und im selben Block wird die lokale Variable definiert benannt und, von ihm wird er vor allem Wert auf.

c ++, lokale und globale Variablen, Der Umfang der Variablen, c ++ Anfänger

Und schon draußen {} Betreiber cout Displays 0, weil es für ihn nicht das gleiche und, das entspricht 2. Sein Anwendungsbereich ist die gleiche wie die andere und, die gleich 0, und nahm einen verschachtelten Block nach oben.

Im Allgemeinen erinnern – im wirklichen Leben sollte man sich nie die gleichen Namen von Variablen geben (außer, dass ist klassisch für Schleifenzähler verwendet. beispielsweise ich, j, k. Wenn Sie 10 Zyklen in Code und sie investiert, dann für jeden von ihnen kann der Zähler mit einem Namen deklariert und definiert ich. Es ist in Ordnung). In anderen Fällen,, immer geben eindeutige Namen zu den Variablen, wenn Sie nicht wollen,, Sie später “erinnert” Programmierer, die im Code behandelt werden.

Wir bieten auch ein Video-Tutorial über den Umfang zu sehen. Autor Video-Tutorial: Markov Denis

Newsletter neue Lektionen über die Programmierung:


Ich bin damit einverstanden, Nachrichten zu empfangen von purecodecpp.com auf meine E-Mail

Datum
Seite
Lokale und globale Sichtbarkeit peremennye.Oblast C ++
Wertung
5

Hinterlasse eine Antwort

Platz Code in Tags: <pre class="lang:c ++ dekodieren:true ">DEIN CODE</Vor>