4D v16.3

Arrays und die 4D Programmiersprache

Home

 
4D v16.3
Arrays und die 4D Programmiersprache

Arrays und die 4D Programmiersprache  


 

 

Arrays sind 4D Variablen. Von daher haben Sie einen Geltungsbereich und folgen – bis auf wenige Ausnahmen – den Regeln der 4D Programmiersprache.

Sie können lokale, Prozess- oder Interprozess-Arrays erstellen und einsetzen. Beispiele:

 ARRAY INTEGER($aiCodes;100)
  ` Erstellt ein lokales Array mit 100 2-byte Werten vom Typ Zahl
 ARRAY INTEGER(aiCodes;100)
  ` Erstellt ein Prozess-Array mit 100 2-byte Werten vom Typ Zahl
 ARRAY INTEGER(◊aiCodes;100)
  ` Erstellt ein Interprozess-Array mit 100 2-byte Werten vom Typ Zahl

Der Geltungsbereich dieser Arrays ist derselbe wie für lokale, Prozess- und Interprozessvariablen:

Lokale Arrays beginnen mit dem Dollarzeichen ($).

Sie gelten für die Methode, in der sie erstellt wurden und werden gelöscht, sobald die Methode endet. Sie können in zwei verschiedenen Methoden denselben Namen haben, denn es sind in der Tat zwei verschiedene Variablen mit unterschiedlichem Geltungsbereich.

Erstellen Sie ein lokales Array in einer Formularmethode, Objektmethode oder Projektmethode, die als Unterroutine von den beiden vorigen Methodenarten aufgerufen wird, wird das Array bei jedem Aufrufen der Formular- bzw. der Objektmethode erstellt und gelöscht. Mit anderen Worten, das Array wird für jedes Formularereignis neu erstellt und gelöscht. Folglich können Sie lokale Variablen weder für Formulare, noch zum Anzeigen oder Drucken verwenden.

Verwenden Sie lokale Arrays sowie lokale Variablen so oft wie möglich. Das verringert den Speicherplatz, der zum Laufen Ihrer Anwendung erforderlich ist.

Prozess-Arrays beginnen mit einem Buchstaben.

Sie gelten für den Prozess, in dem sie erstellt wurden und werden gelöscht, sobald der Prozess endet oder abbricht. Ein Prozess-Array hat automatisch eine Instanz pro Prozess. Deshalb ist das Array in den Prozessen vom selben Typ. Ihr Inhalt ist dagegen für jeden Prozess anders.

Interprozess-Arrays beginnen unter Windows und auf Macintosh mit dem Symbol <>. Auf Macintosh kann auch das Zeichen ◊ (Wahl-/Großschreibtaste + Buchstabe v) verwendet werden. Sie gelten für alle Prozesse einer Arbeitssitzung. Sie sollten sie nur für den gemeinsamen Zugriff auf Daten und Übertragungsinformationen zwischen Prozessen einsetzen.

Tipp: Wissen Sie bereits im voraus, dass auf ein Interprozess-Array mehrere Prozesse zugreifen, was u.U. zu Konflikten führt, schützen Sie den Zugriff auf dieses Array mit einer Semaphore. Weitere Informationen dazu finden Sie im Beispiel zur Funktion Semaphore.

Hinweis: Sie können in Formularen auch Formularobjekte wie rollbare Bereiche, Dropdown-Listen, etc. über Prozess- und Interprozess-Arrays erstellen.

Ein Array lässt sich einem 4D Befehl oder der Routine eines 4D Plug-In als Parameter übergeben, jedoch nicht in einer Benutzermethode. Dafür müssen Sie einen Zeiger auf das Array übergeben, der dann der Parameter für die Methode ist. Weitere Informationen dazu finden Sie im Abschnitt Arrays und Zeiger.

Im Gegensatz zu Variablen vom Typ Text oder Alphanumerisch können Sie ein Array nicht einem anderen zuweisen. Dafür müssen Sie den Befehl COPY ARRAY verwenden.



Siehe auch 

Arrays und Zeiger
Einführung in Arrays

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Arrays

 
GESCHICHTE 

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)