Var/de
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
中文(中国大陆) (zh_CN) │
Zurück zu den reservierten Wörtern.
Var
Vorwort
Das Schlüsselwort Var kennzeichnet den Anfang eines Blocks, in dem die Variablen deklariert (bekannt) gemacht werden.
Der Block wird vom nächsten Schlüsselwort beendet.
Es gibt im Haupt-Programm zwei Orte, an denen Variablen deklariert werden können:
- Vor dem Begin des Hauptblockes.
- Im Kopf von procedure/function Köpfen.
Es gibt in einer Unit drei Orte, an denen Variablen deklariert werden können:
- interface
- implementation
- Im Kopf von procedure/function Köpfen.
Generell kann es auch in class/object-Deklarationen verwendet werden.
Beispiel:
var
intI: Integer;
...
Beispiele in procedure/function
Das var bei i hat die Funktion, das nur ein Zeiger der Variable übergeben wird.
procedure test(var i: integer);
var
a: byte; // normale Deklaration
begin
a := 2;
i := i + a;
end;
var
b: integer;
begin
b := 0;
test(b);
WriteLn(b); // Ausgabe ist 2
end.
Würde man es folgendermassen deklarieren, wird die Variable b nicht verändert und somit 0 ausgegeben.
procedure test(i: integer);
Beispiel in class/object
Es ist auch in erweiterten Record möglich.
type
MyClass = class(TObject)
procedure Test;
var
i: integer; // var zwingend
end;
MyObject = object
procedure Test;
var
i: integer; // var zwingend
end;
Dies ist aber nur nötig, wen vorher was anderes deklariert ist, zB. ein procedure.
Hier ist var nicht nötig.
MyClass = class(TObject)
i: integer; // kein var nötig
procedure Test;
end;