Vorlage Dokumentation#array
Allgemeines
   Aufruf
   Einleitung
   Installation
   Konfiguration
   Syntax
Einführung
   MetabefehlsAusdruecke
   MetabefehlsSyntax
   RegulaereAusdruecke
   VordefinierteVariablen
Funktionen
   abs()
   after()
   and()
   antoi()
   before()
   ceil()
   change()
   close()
   crop()
   equals()
   exp()
   flatten()
   float()
   floor()
   int()
   isnothing()
   itoan()
   length()
   log()
   log10()
   match()
   not()
   open()
   or()
   random()
   read()
   readline()
   sign()
   status()
   statustext()
   substr()
   system()
   time()
   tolower()
   toupper()
   typeof()
   write()
   writeline()
   xname()
   xor()
Metabefehle
   #after
   #array
   #break
   #call
   #config
   #const
   #debug
   #default
   #dict
   #else
   #every
   #forever
   #func
   #if
   #ifregion
   #ifunit
   #include
   #input
   #message
   #next
   #notrace
   #proc
   #return
   #sort
   #table
   #tag
   #trace
   #var
   #while
Rückruf-Prozeduren
   CalcUnitCapacities
   CreateRegionHeader
   CreateUnitHeader
   EndRegion
   EndUnit
   OnBuilding
   OnExit
   OnInit
   OnRegion
   OnShip
   OnUnit
   OutputLineFilter
Report-Objekte
   building
   grenze
   partei
   preise
   races
   region
   report
   ship
   things
   unit
Anhang
   Danksagungen
   SkriptDebugger
   VorlageFAQ

#array

Deklaration von Arrays

Syntax

#array $Arr1 [$Arr2 [$Arr3 [...]]]

Beschreibung

Mittels dieses Befehls kann man Arrays erzeugen. Ein Array ist ein Behälter von Werten die über einen kontinuierlichen, mit null beginnenden, numerischen Index anzusprechen sind.

Auf den Behälter kann mittels '$ArrayName[index]' zugegriffen werden. Neue Elemente hängt man an ein Array an, indem man sie der Position '$ArrayName[$ArrayName.size]' zuweist.

Löscht man, analog zu Dictionaries ein Element mittels '$ArrayName[index]=' so werden alle nachfolgenden Elemente nach unten verschoben. Das automatische Einfügen an beliebiger Stelle (mit Verschieben der Elemente nach hinten) ist (noch) nicht möglich.

Die Größe (Anzahl der Elemente) eines Arrays kann man durch '$ArrayName.size' ermitteln.

Legt man ein Array außerhalb von Funktionen oder Prozeduren an, so ist es global, d.h. von allen Funktionen und Prozeduren und den eingebetteten Befehlen der Einheiten aus sichtbar. Legt man es innerhalb der Funktionen oder Prozeduren an, so ist die Sichtbarkeit auf die betreffende beschränkt und es wird nach Verlassen gelöscht.

Literale: Mit der Syntax [val,...] können Array-Literale angegeben werden.

Parameter

$Arr1, $Arr2, $Arr3 Bezeichner der Arrays die angelegt werden sollen. Groß- und Kleinschreibung wird unterschieden.

Beispiele

$t=[]                     ; $t wird ein leeres #array zugewiesen
$u=[1,'foo','bar',3.14]   ; $u ist nun ein #array aus vier Elementen
$u[0]=['geht','auch',['geschachtelt']]
; jetzt wurde dem 0ten Element von $u ein verschachteltes #array
; zugewiesen

Achtung: Es ist nicht möglich #array innerhalb der Zugvorlage (bzw. dem CR) zu verwenden.

Referenzen

#dict, #var

Revision 28 Jun 2006

Page design, graphics and contents (c) copyright 1999-2004
by S.Schümann and contributing authors