Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat von »"Black-Panther"«
Aber als globale Variable bezeichne ich eine Singleton deshalb schon lange nicht:
Zitat von »"helium"«
C-/C++-Quelltext
1 int &golbaleVariable = *new int(42);
Zitat von »"helium"«
Ich weiß immer noch nicht, was du meinst
Zitat von »"rewb0rn"«
Ich habe ja auch nicht gesagt, dass es das gleiche ist, sondern dass es sich ähnelt: beide haben den selben scope
Zitat von »"rewb0rn"«
und den selben zweck.
Zitat von »"helium"«
Zitat von »"rewb0rn"«
und den selben zweck.
Falsch. Der einzige Zweck eines Singleton ist, dass es nicht mehrfach instanziert werden kann. Einen anderen hat es nicht. Es ist eines der Creational Pattern. Es steuert also die Erzeugung eines Objekts.
Zitat von »"rewb0rn"«
Zitat von »"helium"«
Zitat von »"rewb0rn"«
und den selben zweck.
Falsch. Der einzige Zweck eines Singleton ist, dass es nicht mehrfach instanziert werden kann. Einen anderen hat es nicht. Es ist eines der Creational Pattern. Es steuert also die Erzeugung eines Objekts.
Natürlich hat es einen anderen! Globalen Zugriff auf ein Objekt zu ermöglichen, genau wie eine globale Variable. Ob man nun die Klasse mehrfach instantiieren kann oder nicht ist dabei völlig nebensächlich. Natürlich gibt es von einem Singleton immer nur eine Instanz, aber das ist bei unserem Vergleich doch völlig egal.
Intent:
Ensure a class only has one instance, and provide a global point of access to it.
Motivation:
It's important for some classes to have exactly one instance. [...]
Zitat von »"helium"«
Ich sehe immernoch keine Gemeinsamkeit, da für mich die Absichten wann ich was einsetze einfach nichts miteinander zu tun haben.
Kommt mir irgendwie so vor, wie: Der Himmel ist blau, meine Jeans, die ich gerade trage ist blau, also können wir die beiden Sachen doch einfach mal miteinander vergleichen.
Egal, belassen wir es einfach dabei, das du da eine Ähnlichkeit siehst und ich nicht.
Zitat
En Singleton-Objekt ist eine verbesserte globale Variable. Die Verbesserung, die dieses Muster bietet, liegt darin, dass kein sekundäres Objekt vom Singleton-Typ erzeugt werden kann.
Werbeanzeige