Was für Werte stehen in Variablen von Klassen bevor der Konstruktor aufgerufen wird



  • Hi!

    Mit dem Konstruktor initialisiert man ja eine Klasse. D.h. die Klasse müsste doch schon vollständig vorliegen, sonst könnte man ja nicht sagen:

    variable = 17;

    Aber was steht schon in variable drin, bevor der Konstruktor aufgerufen wird? 0?



  • xyungeloest schrieb:

    Aber was steht schon in variable drin, bevor der Konstruktor aufgerufen wird? 0?

    Wenn es statische/globale Variablen sind, sind sie mit 0 initialisiert. Ansonsten uninitialisiert, d.h. es steht das drin, was vorher mehr oder weniger zufällig an der Stelle im Speicher gestanden hat.



  • xyungeloest schrieb:

    Mit dem Konstruktor initialisiert man ja eine Klasse.

    Nö. Zumindest nicht in C++. In C++ werden Objekte initialisiert nicht Klassen.
    Hört sich pedantisch an, ist es aber nicht. In C++ sind Klassen und Objekte zwei unterschiedliche Dinge, die man demzufolge auch unterscheiden sollte.


Anmelden zum Antworten