找回密码
 注册

QQ登录

只需一步,快速开始

构造函数与析构函数调用顺序

[复制链接]
发表于 2008-9-29 20:23:51 | 显示全部楼层 |阅读模式
<P>派生类与基类中<FONT color=#0000ff>构造函数的调用顺序</FONT>是<FONT color=#ff0000>先调用基类</FONT>的构造函数对基类成员进行初始化。然<FONT color=#ff0000>后执行派生类</FONT>的构造函数,如果基类仍是派生类,则这个过程递归进行。</P># d9 @8 `" `+ F
<P>当派生类还<FONT color=#ff0000>包括对象成员</FONT>时,则<FONT color=#0000ff>基类</FONT>的<FONT color=#ff0000>构造函数先被调用</FONT>,<FONT color=#0000ff>对象成员</FONT>的构造函数<FONT color=#0000ff>次之</FONT>,<FONT color=#ff0000>最后执行派生类</FONT>的<FONT color=#0000ff>构造函数</FONT>。在有<FONT color=#ff0000>多个</FONT><FONT color=#0000ff>对象成员</FONT>的情况下,这些对象成员的<FONT color=#ff0000>调用顺序取决于</FONT>它们在派生类中<FONT color=#ff0000>被说明</FONT>的顺序。</P>* h) ^" Q+ V6 G" Q# \/ m
<P>派生类与基类中<FONT color=#0000ff>析构函数</FONT>的调用顺序与上面的执行构造函数的顺序正好相反。即<FONT color=#ff0000>先执行派生类</FONT>的析构函数,<FONT color=#ff0000>再调用基类</FONT>的析构函数。</P>2 _; G6 F+ _6 w  m1 W, t
<P>多重继承的构造函数与析构函数调用顺序没有作要求,但是我们还是了解一下,这种情况下,基类构造函数执行顺序按它们被继承时说明的顺序依次调用,与它们在被始化列表中的顺序无关。</P>
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|本地广告联系: QQ:905790666 TEL:13176190456|Archiver|手机版|小黑屋|汶上信息港 ( 鲁ICP备19052200号-1 )

GMT+8, 2025-4-15 08:49

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表