Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Globale Variable deklarieren


ProggyPeter - Do 10.03.11 16:35
Titel: Globale Variable deklarieren
Hallo,
ich stehe gerade auf dem Schlauch.

Wenn ich eine Unit erzeuge, die im Interface-Teil Variablendeklarationen hat:


Delphi-Quelltext
1:
2:
3:
4:
5:
Unit TestVar;
interface
  var x : integer;
implementation
end;


Binde diese Unit unter Uses in 3 oder 4 anderen Units ein.
Gibt es die Variable x jetzt einmal im ganzen Programm (Singleton) oder ist die in jedem Unit nochmal vorhanden?

Gruß Peter


HenryHux - Do 10.03.11 16:37

Die Variable wird in jeder Unit vorhanden sein (ohne sie extra zu deklarieren), in der du die Unit in die USES-Liste einträgst.

Lg


trm - Do 10.03.11 16:39

Hi,

x wäre in dem Fall Global im Programm nutzbar.

Aber Du solltest hier vorsichtig sein, x wird von verschiedenen Delphieigenen Prozeduren genutzt. (onmousemove z.B.)


Martok - Fr 11.03.11 17:32

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Und noch besser ist es, gleich ein ordentliches Konzept zu machen, denn fast immer sind globale Variablen erstens fehleranfällig und zweitens unnötig, jedenfalls was einzelne Werte angeht... :roll:

.. und weiter mit der allgemeinen Dikussion geht es dann hier [http://www.delphi-forum.de/viewtopic.php?t=104519].