Lokale Variablen - VAR

Die Deklaration lokaler Variablen erfolgt im Deklarationsteil von Programmierobjekten zwischen den Schlüsselwörtern VAR und END_VAR.

Sie können lokale Variablen mit einem Attribut-Schlüsselwort erweitern.

Über den Instanzpfad können Sie von außerhalb des Programmierobjekts lesend auf lokale Variablen zugreifen. Ein Schreibzugriff von außerhalb des Programmierobjekts ist nicht möglich, da dies vom Compiler als Fehler ausgegeben wird.

Um die vorgesehene Datenkapselung zu wahren, wird dringend empfohlen, auf lokale Variablen einer POU nicht von außerhalb der POU zuzugreifen – weder lesend noch schreibend. (Andere Hochsprachen-Compiler geben auch lesende Zugriffe auf lokale Variablen als Fehler aus.) Bei Bibliotheksbausteinen ist zudem nicht sichergestellt, dass die lokalen Variablen eines Funktionsbausteins bei späteren Updates unverändert bleiben. Dadurch könnte das Applikationsprojekt nach dem Bibliotheksupdate nicht mehr fehlerfrei übersetzt werden.

Beachten Sie hierzu auch die Regel SA0102 vom Static Analysis, die lesende Zugriffe von außen auf lokale Variablen ermittelt.

Beispiel:

VAR
    nVar1 : INT;
END_VAR

Siehe auch: