![]() |
Re: Globale Variablen
Moin Silent,
ich meine nahezu das Gleiche wie sakura.
Delphi-Quellcode:
Oder als eigenes Objekt:
type
TForm1 = class(TForm) // Was halt so auf dem Formular ist // ergänzt um Deine Prozeduren procedure MyProc1; procedure MyProc2; private // Klassenfeld (wie sakura schon sagte) Firgendwas: boolean; public // Als Eigenschaft veröffentlicht, damit ggf. von Aussen zugegriffen werden kann // ansonsten kann man das auch weglassen property irgendwas : boolean read FfVariable; end; //... implementation procedure TForm1.MyProc1; begin irgendwas := false; end; procedure TForm1.MyProc2; begin irgendwas := true; end;
Delphi-Quellcode:
Eingebunden z.B. in das Formular
type
TMyClass = class(TObject) private Firgendwas : boolean; public procedure MyProc1; procedure MyProc2; // Wiederum bei Bedarf property irgendwas : boolean read Firgendwas; end; implementation procedure TMyClass.MyProc1; begin irgendwas := false; end; procedure TMyClass.MyProc2; begin irgendwas := true; end;
Delphi-Quellcode:
War das so als Beispiel verständlich?
type
TForm1 = class(TForm) //... procedure FormCreate(sender: TObject); procedure FormDestroy(sender: TObject); private FMyObject : TMyClass; public property MyObject : TMyClass read FMyObject; end; implementation // In OnCreate des Formulares erstellen procedure TForm1.FormCreate(sender: TObject); begin FMyObject := TMyClass.Create; end; // und im OnDestroy wieder freigeben procedure TForm1.FormDestroy(sender: TObject); begin FreeAndNil(FMyObject); end; |
Re: Globale Variablen
SirThornBerrie,Christian: das hilft mir ziemlich weiter, danke für die mühe 8)
Zitat:
|
Re: Globale Variablen
Ich hätte mal eine Frage dazu:
Wieso sind globale Variablen denn schlecht? :gruebel: Mit Luckies Beitrag: Zitat:
|
Re: Globale Variablen
Weil man solche Variablen von überall und aus jeder Prozedur verändern kann. Irgendwann wenn man zuviele hat, verliert man einfach die Übersicht, wann welche Variable welchen Zustand hat... Solange man es im Griff hat, kann man sie ja ruhig benutzen, wenn Du aber 50 Stück hast und 3000 Prozeduren und von überall und zzu jeder Zeit kannst Du die Globals verändern, ich glaube das Du da nicht mehr weisst, oder durchdenken kannst, wann welche Variable wie aussieht.
|
Re: Globale Variablen
..und vor allem, wenn du dir den Quellcode ein Jahr später ankuckst :mrgreen:
|
Re: Globale Variablen
Achso, vielen Dank!
Ich dachte schon, das Programm wird dadurch langsamer. Ich hatte maximal 40 proceduren bis jetzt. :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:26 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