globale statische Variable



  • Habe eine globale statische Variable angelegt.

    static int count = 0;
    

    Diese Variable dient zum Test; Will hiermit zählen wie oft eine bestimmte Funktion einer Klasse aufgerufen wird.

    ++::count;
    

    Nun möchte ich diese Variable aber wieder von einer anderen Klasse auf 0 setzten.

    ::count = 0;
    

    Der counter ist aber an der stelle an der ich ihn hochzähle nicht auf 0 gesetzt.

    Wieso?


  • Mod

    Jo. Dann hast Du die Variable vermutlich schon wieder geändert...

    Warum machst Du den Count nicht statisch in der Klasse und verwendest ihn direkt inm Konstruktor/Destruktor.

    Setze einen Data-Breakpoint im Debugger, wenn Dir nicht klar ist, wer wann die Vaiable verä#ndert...



  • Atomi schrieb:

    Habe eine globale statische Variable angelegt.

    static int count = 0;
    

    Steht das vielleicht in einem Header-File? Oder einfach Copy+Paste wiederholt in mehreren Source-Files?
    Dann sind es nämlich mehrere getrennte Variablen...



  • steht in einem Headerfile


Anmelden zum Antworten