![]() |
Variablen in Prozeduren
Hallo zusammen
Variablen die in eriner Prozedure deklariert sind werden und dann zb. geändert werden, sind beim nächsten aufruf der prozedur ja wieder weg. Aber kann ich diese auch irgendwie speichern oder muss ich die Variable dann Global machen? |
Re: Variablen in Prozeduren
Hi LOL,
du hast drei möglichkeiten: 1. globale Variablen 2. Variablenparameter 3. Rückgabewert der Funktion (aber nur evtl.) Falls du aber globale Variablen brauchst, dann stimmt an deinem Programmkonzept was nicht. Membervariablen in der Formklasse sind ok, aber globale Variablen :-? Greetz alcaeus |
Re: Variablen in Prozeduren
Beispiel:
Delphi-Quellcode:
Nehmen wir an i würde in der procedure einmal irgendwo auf 0 initialisiert so ist i immer wieder 1. ich will das der wert aber gespeichert wird.
procedure bla;
var i : byte; begin inc(i); end; |
Re: Variablen in Prozeduren
dann solltest du wirklich mit einem Objekt arbeiten und dort i z.B. als private variable deklarieren.
|
Re: Variablen in Prozeduren
also lässt sich in der procedure selbst nichts daran drehen das zu speichern?
|
Re: Variablen in Prozeduren
Hi,
Wenn du auf globale Variabeln verzichtest möchtest, könntest du auch Zuweisbare typisierte Konstanten nehmen. Bsp: Bei jedem klick auf den Button wird x um 1 erhöht.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
{$j+} const x : Integer = 0; {$j-} begin Caption := Inttostr(x); Inc(x); end; Bem: Diese Option dient der Abwärtskompatibilität zu Delphi 1.0. | Die Direktive $J legt fest, ob typisierte Konstanten geändert werden | können. Im Status {$J+} ist diese Änderung möglich. Typisierte | Konstanten sind in diesem Fall mit initialisierten Variablen | vergleichbar. Im Status {$J-} sind typisierte Konstanten tatsächlich | konstant. Jeder Versuch, sie zu ändern, führt zu einer Fehlermeldung | durch den Compiler. In früheren Versionen von Delphi und Borland | Pascal konnten typisierte Konstanten immer geändert werden (wie im | Status {$J+}). Deshalb muß älterer Quelltext, der änderbare | typisierte Konstanten enthält, im Status {$J+} compiliert | werden. Bei neuen Anwendungen sollten Sie aber initialisierte | Variablen und den Status {$J-} verwenden. |
Re: Variablen in Prozeduren
ok danke so werde ichs machen :hello:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz