Konstruktor
-
Hallo, habe hier ein Buch vor mir liegen.
//Implementierung des Konstruktors Rectangle::Rectangle(int width, int height): itsWidth(width), //Initialisierungen itsHeight(height) {} //leerer Rumpfich habe das so noch nie gesehen, ist das standard oder völliger Unsinn?
sollte man es besser so schreiben?Rectangle::Rectangle(int width, int height) { itsWidth = width; itsHeigth = heigth; }
-
Das nennt sich Initialisierungsliste.
In manchen spezielleren Fällen musst Du die Liste nehmen (ich weiß nimmer welche das waren , aber das bekommen wir bestimmt gleich erläutert)
-
alexC++ schrieb:
ich habe das so noch nie gesehen, ist das standard oder völliger Unsinn?
Standard. Wie Knuddlbaer schon sagte, das ist eine Initialisierungsliste.
sollte man es besser so schreiben?
Nein. Eine richtige Initialisierung ist besser als eine Defaultinitialisierung mit anschließender Zuweisung. Bei Membern, die du gar nicht zuweisen kannst (Referenzen, const-Member) geht es gar nicht anders.