ERASE

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » E » ERASE

Syntax: ERASE Array [, Array [,...]]
Typ: Anweisung
Kategorie: Speicher

ERASE löscht dynamische Arrays aus dem Speicher oder setzt alle Elemente eines statischen Arrays auf 0 bzw. auf den Initialisationswert. Es dürfen beliebig viele Array-Bezeichner angegeben werden.

Beispiel:

type myUdt
  as integer x, y
  declare constructor(xx as integer = 1, yy as integer = 2)
end type
constructor myUdt(xx as integer = 1, yy as integer = 2)
  this.x = xx
  this.y = yy
end constructor

dim zahl(2) as integer = {0, 1, 2}
dim text(2) as string = {"a", "b", "c"}
redim dynamisch(2) as integer
dim udt(2) as myUdt
udt(0) = myUdt(9, 9)
udt(1) = myUdt(8, 8)
udt(2) = myUdt(7, 7)

' Arrays ausgeben
print "zahl()", "text()", "udt()"
for i as integer = 0 to 2
  print zahl(i), text(i), udt(i).x & "/" & udt(i).y
next
print "Adresse von dynamisch(): " & @dynamisch(0)
print

' Arrays löschen und erneut ausgeben
erase zahl, text, udt, dynamisch
print "zahl()", "text()", "udt()"
for i as integer = 0 to 2
  print zahl(i), text(i), udt(i).x & "/" & udt(i).y
next
print "Adresse von dynamisch(): " & @dynamisch(0)
sleep

Ausgabe:

zahl()        text()        udt()
 0            a             9/9
 1            b             8/8
 2            c             7/7
Adresse von dynamisch(): 143869584

zahl()        text()        udt()
 0                          1/2
 0                          1/2
 0                          1/2
Adresse von dynamisch(): 0

Unterschiede zu früheren Versionen von FreeBASIC:
Vor FreeBASIC v0.11 war der Einsatz von ERASE nur für dynamische Arrays zulässig.

Siehe auch:
DIM, CLEAR, Arrays