Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Arten der Variablen Deklaration
spoof - Di 17.09.13 20:07
Titel: Arten der Variablen Deklaration
Hallo, ich habe eine Frage bezüglich der Deklaration von Variablen.
Wie ich es in der Schule gelernt habe, sollen wir variablen immer im localen Bereich declarieren, in ausnahmefällen global.
Jetzt hab ich aber schon desöfteren gesehen dass viele oben im quelltext unter privat und public deklarieren.
Wo ist der unterschied? Und gibt es noch andere möglichkeiten?
IhopeonlyReader - Di 17.09.13 20:14
unter global sind sie überall nutzbar, also immer wenn die unit eingebunden ist.
Wenn sie unter private sind, besitzt jede klasse den typen !
hast du also form1, form2: TFormX;
so besitzt form1 eine variable und form2 eine variable, wäre sie global so hätten beide dieselbe.
andere möglichkeiten: private, public, global, local, (protected)
Moderiert von
Narses: Beiträge zusammengefasstsonst schau dir mal folgenden Link an:
http://www.delphi-treff.de/object-pascal/variablen-und-konstanten/
Nersgatt - Mi 18.09.13 07:15
spoof hat folgendes geschrieben : |
Wie ich es in der Schule gelernt habe, sollen wir variablen immer im localen Bereich declarieren, in ausnahmefällen global. |
Ich würde das etwas anders formulieren. Denn es gibt zwischen "lokal" und "global" noch ziemlich viele Zwischenstufen. Ich würde den Schülern beibringen "Deklariert die Variablen so lokal wie möglich und so global wie nötig".
Mal ein paar Beispiele für die Abstufung:
- Deklaration innerhalb einer Procedure/Function: Die Variable kann nur innerhalb dieser Procedures/Functions genutzt werden.
- Deklaration im Abschnitt "private" einer Klasse: die Variable kann innerhalb der Klasse (Formulare sind auch Klassen) und von Klassen, die sich in der selben Unit befinden, von allen Procedures/Functions genutzt werden.
- Deklaration im Abschnitt "protected" einer Klasse: die Variable kann von der Klasse selbst und von abgeleiteten Klassen genutzt werden.
- Deklaration im Abschnitt "public" einer Klasse: Auf die Variable kann "von außen", also über eine Instanz der Klasse, zugegriffen werden.
- Deklaration Global: die Variable kann von überall aus angesprochen werden.
WasWeißDennIch - Mi 18.09.13 08:18
Wobei man im public- bzw. published-Abschnitt üblicherweise keine Variablen deklariert, sondern Properties, die intern dann auf private Variablen zugreifen.
jaenicke - Mi 18.09.13 08:35
WasWeißDennIch hat folgendes geschrieben : |
Wobei man im public- bzw. published-Abschnitt üblicherweise keine Variablen deklariert, sondern Properties, die intern dann auf private Variablen zugreifen. |
Das sind dort streng genommen Felder und keine Variablen, wenn man es genau nimmt. ;-)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!