Statische Klassenvariablen oder doch globale?
-
Vielen Dank für die Erläuterungen. Stimmt, ein anonymer Namensraum sollte sich bezüglich Linkage eigentlich gleich wie ein benannter verhalten. Dass man da alles reinpacken kann (auch Klassen), habe ich auch nicht bedacht, ist aber gut zu wissen.
Möchte nun noch jemand bestätigen, dass private statische Klassenvariablen im Normalfall sinnlos sind? Oder hat jemand ein Gegenargument? Mir fällt nämlich gerade echt keines ein...
-
Nexus schrieb:
Möchte nun noch jemand bestätigen, dass private statische Klassenvariablen im Normalfall sinnlos sind? Oder hat jemand ein Gegenargument? Mir fällt nämlich gerade echt keines ein...
Naja wa sis mit statischen Konstanten? Oder anderen internen Werten die nur die Klasse selbst braucht die aber nur einmal gebraucht werden und damit Platzsparender weise static intern abgelegt werden?
-
Xebov schrieb:
Naja wa sis mit statischen Konstanten? Oder anderen internen Werten die nur die Klasse selbst braucht die aber nur einmal gebraucht werden und damit Platzsparender weise static intern abgelegt werden?
Das ist alles auch mit globalen Variablen möglich, die in den entsprechenden .cpp-Dateien deklariert werden. Darum ging es ja die ganze Zeit...
-
Naja ... einzige Ausnahme die mir jetzt einfällt ist integrale private statische Konstanten (puh!), welche von friend Klassen verwendet werden.
-
Gut, danke.
friend
kommt bei mir eher selten vor (in meinem jetzigen Projekt gar nicht). Hmm, ich glaube, in nächster Zeit werde ich eher globale Variablen in .cpp-Dateien innerhalb anonymer Namensräume nutzen. Bis ich mir vielleicht eines Tages mal sage, es wäre halt doch schöner, die Variable würde zur Klasse gehören...P.S.:
hustbaer schrieb:
(puh!)
Warum hast du nicht "integrale private statische konstante Variablen" hingeschrieben? (Wegen des "Widerspruchs" konstante Variable? Oder hat dich das bereits genügend Schnauf gekostet?)...
-
Nexus schrieb:
P.S.:
hustbaer schrieb:
(puh!)
Warum hast du nicht "integrale private statische konstante Variablen" hingeschrieben? (Wegen des "Widerspruchs" konstante Variable? Oder hat dich das bereits genügend Schnauf gekostet?)...
Weiss nicht, wäre mir garnicht eingefallen dass man das schreiben könnte. Konstanten sind für mich halt Konstanten, und keine Variablen. Wenn dann hätte ich noch "integrale private statische konstante Member" geschrieben
-
Hm... Ich sag auch konstante Variablen, ist wohl Ansichtssache.
Und einigen wir uns doch auf "integrale private statische konstante Membervariablen".
Vielen Dank übrigens für die Hilfe!