Klassenvariablen initialisieren
-
Hallo!
Ich bin gefragt worden wie man Klassenvariablen initialisiert, besser gesagt welches davon richtig ist, weil beides funktioniert.
Jetzt ist meine Frage, was ist das eigentlich unter a?
a)
Auto::Auto(int tankgroesse, float tankinhalt, float verbrauch): m_tankgroesse(tankgroesse), m_tankinhalt(tankinhalt), m_verbrauch(verbrauch) {}Ich kenne ehrlich gesagt nur Methode:
b)
Auto::Auto(int tankgroesse, float tankinhalt, float verbrauch) { m_tankgroesse = tankgroesse; m_tankinhalt = tankinhalt; m_verbrauch = verbrauch;
-
Cybertec schrieb:
Ich bin gefragt worden wie man Klassenvariablen initialisiert, besser gesagt welches davon richtig ist, weil beides funktioniert.
Initialisieren tust du nur mit der Variante a, b ist eine nachträgliche Zuweisung. Der Begriff hierbei ist "Initialisierungsliste". Und nur mit einer solchen kannst du z.B. Konstanten und Referenzen initialisieren.
-
Ah ja, danke.
Hab es jetzt nachgelesen, und ist auch klar soweit.
