Protected


Syntax
Protected[.<Typ>] <Variable[.<Typ>]> [= <Ausdruck>] [, ...]
Beschreibung
Protected ("geschützt") ermöglicht den Zugriff auf eine Variable nur innerhalb einer Prozedur, auch wenn die gleiche Variable im Hauptprogramm bereits als Global deklariert wurde. Protected in seiner Funktion ist aus anderen BASIC-Dialekten oftmals als 'Local' bekannt. Jeder Variable kann auch sofort ein Standard-Wert zugewiesen werden.

Wenn nach Protected ein Typ angegeben wird, dann wird der Standard-Typ für diese Deklaration geändert. Protected kann auch zusammen mit Arrays, verknüpften Listen und Maps verwendet werden.

Der Wert der lokalen Variablen wird bei jedem Prozedur-Aufruf neu initialisiert (zurückgesetzt). Um dies zu vermeiden, können Sie alternativ das Schlüsselwort Static verwenden, um globale von lokalen Variablen zu trennen, während diese ihren Wert behalten.

Beispiel: Mit Variable

  Global a
  a = 10
  
  Procedure Change()
    Protected a
    a = 20 
  EndProcedure 
  
  Change()
  Debug a ; Wird 10 ausgeben, da die Variable geschützt ("protected") wurde.

Beispiel: Mit Array

  Global Dim Array(2)
  Array(0) = 10
  
  Procedure Change()
    Protected Dim Array(2) ; Dieses Array ist geschützt, es wird nur lokal verfügbar sein.
    Array(0) = 20 
  EndProcedure 
  
  Change()
  Debug Array(0) ; Wird 10 ausgeben, da das Array geschützt wurde.