多态基类声明virtual析构函数
Quote *itemP = new Quote; //类型一致 delete itemp; //调用基类的析构函数 itemP = new Bulk_quote; //动态类型与静态类型不一致,正确调用派生类的析构函数
如果基类的函数不是虚函数,则delete一个指向派生类对象的基类指针会产生未定义的行为!!!
如果class不含virtual函数,通常表示它并不意图做一个base class。 当class不企图被当作base class,令其析构函数为virtual往往是不好的。
(会有额外的开销)
posted on 2016-11-22 10:08 ToBeAprogrammer 阅读(62) 评论(0) 收藏 举报
浙公网安备 33010602011771号