Chinaunix

标题: C++析构函数为何一般要设为virtual? [打印本页]

作者: foosa    时间: 2006-05-10 12:54
标题: C++析构函数为何一般要设为virtual?
今天一个老员工指点说通常将析构函数设为virtual的。
查了一些资料后,大概理解为如果将析构函数设为virtual的,且存在有继承关系,则delete掉派生类的对象时,
也会调用基类的析构函数。否则只调用派生类自身的析构函数。
不知理解对否?
还有其他的原因吗?
作者: wuya_ling    时间: 2006-05-10 20:11
当一个基类的指针指向一个派生类的对象时,
当调用析构函数时调用的是派生类的析构函数




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2