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), в котором эта переменная объявлена (Dinkel). Außerhalb dieses Bereichs – der Compiler sieht es nicht (es ist nicht verfügbar).

So stellt sich heraus, – Variablen wie im beschriebenen Funktionen, не могут быть использованы за её пределами. В качестве примера можно рассмотреть такой код:

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 Глобальной переменной.

Так же у нас в примере видна функция Summe(), dass etwas tut. Es wird in der zweiten Variablen beschrieben – k. Sie hat bereits eine spezifische “Anmeldung” – Funktion. При этом данная переменная не может быть использована за пределами функции. dh. wenn die Funktion Main() дописать еще и вывод этой k der Bildschirm, компилятор начнет “schwören”. Es es einfach nicht einfach außerhalb der Funktion sehen Summe(). überprüfen:

Variable k называется 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, идентичное с глобальной переменной описанной выше, das ist eine andere Variable.

Sobald ihre Zyklus gearbeitet, Variable ich, darin beschrieben, verliert seine Macht, или иначе говоря – “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. Менеджер памяти у себя помечает, 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, ограничивающимися {}, dh. zuerst cout Displays 2, потому что определен блок операторов, в котором сработает это cout. И в этом же блоке определена локальная переменная с именем 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, и определена выше вложенного блока.

Im Allgemeinen erinnern – в реальной жизни никогда не надо давать одинаковые имена переменным (außer, dass ist klassisch für Schleifenzähler verwendet. beispielsweise ich, j, k. Wenn Sie 10 Zyklen in Code und sie investiert, то для каждого из них можно объявлять и определять счетчик с именем 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
Локальные и глобальные переменные.Область видимости С++
Wertung
5

Hinterlasse eine Antwort

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