<P>派生類與基類中<FONT color=#0000ff>構造函數(shù)的調用順序</FONT>是<FONT color=#ff0000>先調用基類</FONT>的構造函數(shù)對基類成員進行初始化。然<FONT color=#ff0000>后執(zhí)行派生類</FONT>的構造函數(shù),如果基類仍是派生類,則這個過程遞歸進行。</P>
" N1 x5 a( s) c l! [<P>當派生類還<FONT color=#ff0000>包括對象成員</FONT>時,則<FONT color=#0000ff>基類</FONT>的<FONT color=#ff0000>構造函數(shù)先被調用</FONT>,<FONT color=#0000ff>對象成員</FONT>的構造函數(shù)<FONT color=#0000ff>次之</FONT>,<FONT color=#ff0000>最后執(zhí)行派生類</FONT>的<FONT color=#0000ff>構造函數(shù)</FONT>。在有<FONT color=#ff0000>多個</FONT><FONT color=#0000ff>對象成員</FONT>的情況下,這些對象成員的<FONT color=#ff0000>調用順序取決于</FONT>它們在派生類中<FONT color=#ff0000>被說明</FONT>的順序。</P>/ m2 d3 Q3 r9 D$ ~, e. _$ Z! Z6 E
<P>派生類與基類中<FONT color=#0000ff>析構函數(shù)</FONT>的調用順序與上面的執(zhí)行構造函數(shù)的順序正好相反。即<FONT color=#ff0000>先執(zhí)行派生類</FONT>的析構函數(shù),<FONT color=#ff0000>再調用基類</FONT>的析構函數(shù)。</P>
( ?( H+ w3 V" b% Q<P>多重繼承的構造函數(shù)與析構函數(shù)調用順序沒有作要求,但是我們還是了解一下,這種情況下,基類構造函數(shù)執(zhí)行順序按它們被繼承時說明的順序依次調用,與它們在被始化列表中的順序無關。</P> |