Autor Beitrag
jamirogweih
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Do 10.04.03 21:45 
hallo,
wie kann ich auf den wert einer lokalen variable einer procedure von einer anderen procdure aus zugreiefen??? bin neu auf dem gebiet, ..
danke vielmals ,
mars
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 238

Debian Woody, Win 2000, Win XP
D7 Ent, Kylix 3
BeitragVerfasst: Do 10.04.03 21:59 
Eine lokale Variable heisst lokal, weil sie wirklich nur lokal zur Verfügung steht. Das heisst, du kannst von "aussen" nicht auf sie zugreifen. Was du aber machen kannst, ist der Prozedur eine Variable übergeben, mit welcher die Prozedur arbeiten und sogar verändern kann. Hier ein Beispiel:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
//Eine Prozedur, die eine Variable übernimmt und dann damit etwas anstellt  (a ist zb eine globale Variable)
procedure quadratflaeche(i: Integer);
begin
ShowMessage(IntToStr(i*i));
end;

//So würde die Funktion aufgerufen
quadratflaeche(a);


Mit der folgenden Prozedur kann man die übergebene Variable sogar verändern (a ist zb eine globale Variable):
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure ZahlVeraendern(var i: Integer);
begin
i:=i*3;
end;

//Aufgerufen wird sie gleich wie die vorige
ZahlVeraendern(a);


Ich hoffe, ich habe dir etwas neues und hilfreiches erklärt. Sonst postest du nochmals.
jamirogweih Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Fr 11.04.03 17:13 
jup vielen dank