namespace { static x....}
-
Ich hab beim verwenden einer Fabrik das Registrieren in der cpp mit hilfe einer static Vairbalen gesteckt.
Dann umgab ich das ganze in ein leeren Namensraum um es nur in dieser UE zu haben.
Beispiel:
namespace { bool registered = WerteFabrik().Register("Schreibschutz",WerteFabrikWerkzeug<NurLesen>); } namespace { bool registered = WerteFabrik().Register("Beschreibung",WerteFabrikWerkzeug<Beschreibung>); }
Nun ging ich davon aus das Beschreibung und NurLesen registriert wird.
Das geschiet aber nicht immer. Ab und an wird nur eine der Routinen aufgerufen und fertig. Benenne ich eine der Variablen um gibts keine Probleme.Ist der Ansatz den ich da versuche falsch ? Wenn ja, wie könnte man es erreichen das immer
namespace { bool registered = WerteFabrik().Register("irgendwas",WerteFabrikWerkzeug<irgendwas>); }
verwendet werden kann ? Es sollen von weiteren Programmieren Klassen geshrieben werden die sich so Registrieren sollen. Es kann nicht garantiert werden das die Namen unterschiedlich sind von den static variablen.