Warum kann ich nicht Klammer initialisiert eine struct aus einem anderen abgeleitet struct?

Wenn ich diesen code ausführen:

struct X {
    int a;
};

struct Y : public X {};

X x = {0};
Y Y = {0};

Bekomme ich:

error: could not convert ‘{0}’ from ‘<brace-enclosed initializer list>’ to Y

Warum brace-Initialisierung arbeiten für die Basisklasse, nicht aber die abgeleitete Klasse?

InformationsquelleAutor Eric | 2013-06-07

Schreibe einen Kommentar