Wann und Warum static?
-
Aber statische private member haetten da nix zu suchen. Die kannst du auch alle mit dem selben aufwand was mir vorschlägst, durch lokale funktionen eliminieren.
Exakt. Warum braucht man eigentlich private statische Memberfunktionen? Also mal von template metafoo abgesehen?
-
otze schrieb:
Exakt. Warum braucht man eigentlich private statische Memberfunktionen? Also mal von template metafoo abgesehen?
malloc oder ähnliches für die freiliste, Klassenspezifische Objekt-IDs erzeugen für Verwendung im Konstruktor, Singletons.
-
das erste hab ich nicht verstanden, 2 habe ich ehrlich gesagt nie gebraucht und singleton ist bei mir in etwa bei goto angesiedelt.
-
malloc oder ähnliches für die freiliste, Klassenspezifische Objekt-IDs erzeugen für Verwendung im Konstruktor, Singletons.
Und auch das könntest Du genau so mit globalen Methoden ersetzen.
Am Ende isses ein Gestaltungsmittel ...
und singleton ist bei mir in etwa bei goto angesiedelt.
Manche sehen Singletons als total sexy an ...
Manche sehen Singletons nur als aufwendiger formulierte Form einer globalen Variable (absolut unattraktiv) ...Wenn Du das Design 100% selbst in der Hand hasst, brauchst du dann globale Variablen ?
Was ist nun gut, was ist nun schlecht ? Und wer bestimmt das ?
Ciao ....
-
cooky451 schrieb:
@Skym0sh0 Anfangsfrage:
Wenn etwas zur Klasse gehört aber nicht zu einem bestimmten Objekt, dann macht man es statisch. Eigentlich relativ offensichtlich. Oft braucht man das natürlich nicht, und wenn das so ist ist das eher ein gutes als ein schlechtes Zeichen. Ich habe allerdings z.B. öfter mal private statische Hilfsmethoden, weil man sowas bei Templates nicht in der Implementierungsdatei in einem anonymen namespace verstecken kann. Ein weiteres Beispiel für statische Methoden sind Singletons. (Welche übrigens generell als Antipattern gesehen werden, was ich auch verstehen kann, aber für Startup-Kram sind sie dennoch nützlich. z.B. für WSAStartup() bei Sockets.)RHBaum schrieb:
Manche sehen Singletons als total sexy an ...
Manche sehen Singletons nur als aufwendiger formulierte Form einer globalen Variable (absolut unattraktiv) ...Und beide liegen falsch.
RHBaum schrieb:
Was ist nun gut, was ist nun schlecht ?
Schlecht sind z.B. statische Memberfunktionen die nicht unmittelbar zur Klasse gehören und die man auch in eine .cpp Datei schieben könnte. Oder Singletons die globale Variablen modellieren. Oder Leerzeichen vor Satzzeichen.
Und wer bestimmt das ?
Ich.

-
cooky451 schrieb:
Und wer bestimmt das ?
Ich.

Ich nicht?
*okayface.png*