AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Globale Variablen

Ein Thema von Pseudemys Nelsoni · begonnen am 11. Okt 2003 · letzter Beitrag vom 12. Okt 2003
Antwort Antwort
Seite 2 von 2     12   
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Globale Variablen

  Alt 11. Okt 2003, 17:05
Moin Silent,

ich meine nahezu das Gleiche wie sakura.


Delphi-Quellcode:
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;
Oder als eigenes Objekt:

Delphi-Quellcode:
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;
Eingebunden z.B. in das Formular

Delphi-Quellcode:
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;
War das so als Beispiel verständlich?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#12

Re: Globale Variablen

  Alt 12. Okt 2003, 02:05
SirThornBerrie,Christian: das hilft mir ziemlich weiter, danke für die mühe 8)

Zitat:
War das so als Beispiel verständlich?
auf jeden fall
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: Globale Variablen

  Alt 12. Okt 2003, 09:08
Ich hätte mal eine Frage dazu:

Wieso sind globale Variablen denn schlecht?

Mit Luckies Beitrag:

Zitat von Luckie:
Globale Variablen sind nicht generell schlecht. Man sollte nur wissen, was man tut.
fange ich nicht so viel an.
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#14

Re: Globale Variablen

  Alt 12. Okt 2003, 09:13
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.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#15

Re: Globale Variablen

  Alt 12. Okt 2003, 09:14
..und vor allem, wenn du dir den Quellcode ein Jahr später ankuckst
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#16

Re: Globale Variablen

  Alt 12. Okt 2003, 09:28
Achso, vielen Dank!

Ich dachte schon, das Programm wird dadurch langsamer. Ich hatte maximal 40 proceduren bis jetzt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz