[c++] kolejnosc wywolan konstruktorow i destruktorow

0
class Baza1 {...};
class Baza2 {...};
class Baza3 {...};
class x: public Baza1, public Baza2 {...};
class y: private Baza3, public X, public Baza1 {...};
int main()
{Y a;}
 

jak to bedzie dla konstruktorow i destruktorow (ja pamietam ze konstruktory na licie inicjalizacyjnej najpierw, pozniej zawartosc danego konstruktora, desturkoty na odwrot bodajze...)

konstruktory: Baza3, Baza1, Baza2, Baza1(jeszcze raz), zawartosc konmstruktora klasy Y
destruktory: destruktot Y, baza1, baza2, baza1(jeszcze raz), baza3

zapewne jest to zle :) jak to powinno byc i dlaczego :) ?

0

A to w ogóle zadziała? Jeśli Baza1 nie jest pusta to może być problem z wielokrotnym dziedziczeniem tej samej klasy...
Poza tym pytanie jest o to które ciało konstruktora wykona się jako pierwsze?
Baza3, Baza1, Baza2, X, Baza1, Y
destruktory zawsze w odwrotnej kolejności

0

no wlasnie ja nie wiem, zakladam ze jakis wielkich udziwnien tam w kodzie gdzie kropki nie ma ;)

0

Jakiekolwiek pole lub metoda to nie jest zbyt duże udziwnienie ;]

0

no tak :D

to byla Twoja odpowiedz ? (Baza3, Baza1, Baza2, X, Baza1, Y)

czyli calkiem dobrze to okielznalem :D z pospiechu przeoczylem cialo X

0

Nie łatwiej i szybciej byłoby to po prostu przetestować?

0

ale jak ?
w sensie jakies couty typu "Jestem konsturktorem tym i tym" ?

0

No chociażby

1 użytkowników online, w tym zalogowanych: 0, gości: 1