Statische Variable
-
Hallo!
Ich habe meine eigene Container-Klasse geschrieben und möchte diese nun als statische Variable verwenden.
Dazu habe ich in einer Headerdatei Test.h folgenden Code:
class Test{ private: static Container c; };Wenn ich diese Variable verwenden will sagt jedoch der Linker dass das Symbol nicht aufgelöst werden kann. Daher habe ich in einer cpp-Datei Test.cpp auch noch diesen Code geschrieben:
#include <Test.h> Container Test::c;Das Programm kompiliert daraufhin zwar, jedoch wird gleich beim Programmstart der Destruktor der Klasse Container aufgerufen, was aber keinesfalls passieren darf. Ich will Container so nutzen, dass während der gesamten Laufzeit des Programms genau eine Instanz der als statische Variable existiert. Der Destruktur darf erst bei Programmende laufen.
Ich kenne mich mit statischen Variablen leider nicht besonders gut aus, da ich sie selten verwende.
Kann mir jemand helfen?
Danke
mfg
-
Hat sich erledigt, das Problem liegt nicht an der statischen Variable sondern im Konstruktor meiner Container-Klasse. Siehe hier: http://www.c-plusplus.net/forum/viewtopic-var-p-is-979679.html#979679
mfg