Laden...

Zentrale Variable

Erstellt von Dial vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.585 Views
D
Dial Themenstarter:in
37 Beiträge seit 2005
vor 17 Jahren
Zentrale Variable

Hallo Leute,
gibt es eine Möglichkeit zentrale Variablen zu erstellen oder C#-Ersatz für #define?
Ich würde gerne zentral nur 1mal den Wert einer Variable ändern um nicht durch den gesamten Sourcecode stöbern zu müssen. Oder noch viel besser ein C Header file mit #defines einbinden.
Gibt es da elegante Möglichkeiten oder denke ich da einfach zu C nah???
Danke dial

564 Beiträge seit 2006
vor 17 Jahren

Hi!

Du meinst sicherlich globale Variablen. Nein, die gibt es in C# nicht. Mit dem Singleton-Pattern kannst du so eine Funktion aber realisieren.

der Marcel

:] 😄Der größte Fehler eines modernen Computers sitzt meist davor 😁 :]

1.271 Beiträge seit 2005
vor 17 Jahren

Also das #define und #defines gibts es NICHT!! Um "nicht durch den gesamten Quellcode stöbern zu müssen" nimmst du konstanten (const) bzw. (besser) statische nur-lesbare (static readonly) Variablen. Irgendwelche Werte immer direkt zu coden ist sowieso nicht so gut. Vor allem wenn es Werte sind, die du öfter brauchst.

A wise man can learn more from a foolish question than a fool can learn from a wise answer!
Bruce Lee

Populanten von Domizilen mit fragiler, transparenter Außenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
Wer im Glashaus sitzt, sollte nicht mit Steinen werfen.

D
Dial Themenstarter:in
37 Beiträge seit 2005
vor 17 Jahren

Das hab ich mir fast gedacht. Was mach ich aber wenn ich diese Variablenwerte in verschiedenen Forms brauche? Muss ich dann für jeden Form diese const Variable anlegen und dementsprechend jedesmal überall ändern?

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Dial,

erstmal reden wir bei #define über Konstanten, oder? Das ist m.E. ein wichtiger Unterschied.

Du kannst dir einfach eine Hilfsklasse machen, die alle Konstantendefinitionen enthält und diese dann überall benutzen, wo du willst.

herbivore

D
Dial Themenstarter:in
37 Beiträge seit 2005
vor 17 Jahren

Hallo Herbivore,
mh mh mh. Das heißt ich muss dann überall wo ich diese Variable verwende diese Klasse aufrufen oder? Ich weiß doofe Anfängerfragen von mir.
Auf jeden Fall vielen Dank euch allen

4.221 Beiträge seit 2005
vor 17 Jahren

Für Zusammenhängende Begriffe bietet sich auch die Enumeration an

Guckst Du Keyword "enum" in der Hilfe

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Dial,

meinst du wirklich Variable? Ich hatte ja extra nachgefragt. Wenn du wirklich Variable meinst, dann vergiss meinen Hinweis. "Globale" Variablen sollte man vermeiden. Es gibt andere Wege => Forumssuche.

Wenn du Konstante meinst, dann musst du die Klasse nicht "aufrufen" (was ohnehin nicht geht), sondern kannst die Konstanten direkt verwenden: Klasse.Konstante.

Bei der Gelegenheit der Hinweis: Eine Einführung in die Programmierung kann ein Forum leider nicht leisten. Dafür schnappst du dir besser ein Buch.

herbivore

D
Dial Themenstarter:in
37 Beiträge seit 2005
vor 17 Jahren

Sorry hab natürlich Variable gemeint.
Du hast natürlich recht, dass mir ein Buch so grunglegende Sachen besser erleutern würde als ein Forum. Bin Hardwareentwickler und mache das ganze nebenbei, d.h. mir fehlt so ein bisschen die Zeit das ganze didaktisch anzugehen. Trotzdem vielen Dank für eure Hilfe

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Dial,

ich verstehe leider immer noch nicht, was #define mit Variablen zu tun hat.

Meinstens macht man doch sowas wie:

#define MAX 4711

Dann ist MAX eine Konstante.

herbivore

D
Dial Themenstarter:in
37 Beiträge seit 2005
vor 17 Jahren

Hast ganz klar recht!!
Hab mich nur etwas schnell oben ausgedrückt.
Konstante = feste Variable. Bin mir nicht sicher ob ich für meine Anwendung Variablen oder Konstanten benötige.

P
1 Beiträge seit 2006
vor 17 Jahren

hmmmmmmmmmmmmmmmm