c++
b02330224
这个作者很懒,什么都没留下…
展开
-
析构函数声明为虚函数
Base *pb; inherit c;//inherit 是继承 Base的 pb=&c; delete pb;时需要调用对象的析构函数,如果基类析构不是virtual型,会根据pb的定义类型调用相应类的析构函数,即调用即类析构,但如果你在派生类析构里有内存释放操作,那就会发生内存泄漏。假如基类析构是virtual型,会根据pb所指对象的类型调用相应类的析构函数,即派生类析转载 2014-04-02 15:40:30 · 1209 阅读 · 0 评论 -
抽象类的使用+虚析构
抽象类的使用+虚析构 分类: C/C++2013-10-23 10:36 155人阅读 评论(0) 收藏 举报 抽象类的使用+虚析构 纯虚函数可以让类先具有一个操作名称,而没有操作内容,让派生类在继承时再去具体地给出定义。凡是含有纯虚函数的类叫做抽象类。这种类不能声明对象,只是作为基类为派生类服务。除非在派生类中完全实现基类中所有的的纯虚函数,否则,派转载 2014-04-02 15:41:31 · 1469 阅读 · 0 评论 -
虚函数表
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使用方法,我在这里不做过转载 2014-04-02 16:32:34 · 825 阅读 · 0 评论