Zitat von
Robert Marquardt:
Bei C++ hat man nur genau einen Konstruktor. Delphi macht da ein paar Tricks die Konstruktoren doch abzubilden, aber es laesst sich nicht vollstaendig abbilden. Nicht immer aber gelegentlich laesst sich dann eine Komponente nicht im C++ Builder benutzen.
Nun verwirrst du mich sehr: Ein Beispiel:
Code:
class Auto
{
private:
int AnzahlRaeder;
double Motorleistung;
public:
// Defaultkonstruktor:
Auto()
{
Motorleistung = 0.0;
AnzahlRaeder = 4;
}
// überladener Konstruktor:
Auto( double LeistungKW, int nRad = 4 )
{
Motorleistung = LeistungKW;
AnzahlRaeder = nRad;
}
};
sind doch zwei Konstruktoren, oder nicht? Und dies sind Beispiele aus Büchern, die keinerlei Bezug auf den C++-Builder haben.
Du hast in C++ genau einen Default-Konstruktor, da gebe ich dir recht. Wenn du ein überschreibenden Konstruktor erstellst, dann musst du auch den Default-Konstruktor definieren.
Aber du hast mehrere Konstruktoren.
Wo ich dir recht gebe, ist der Frust mit der
VCL im C++-Builder, da die
VCL auch im C++-Builder in Delphi geschrieben ist, sind gerade in der Komponentenentwicklung ein paar krampfige Fingerbruch-Übungen zu machen. Es kann sein, dass da auch was mit Konstruktoren zu Berücksichtigen gab, dazu arbeite ich schon wieder zu lange nicht mehr mit dem C++-Builder.
BTW: ein Vorschlag für DP07: Code-Tag für c++ wäre nett.......