码迷,mamicode.com
首页 >  
搜索关键字:基类指针    ( 183个结果
重载,重定义与隐藏
重载:在同一个类中,要求函数名相同,函数参数不同 重定义:在基类与派生类之间,派生类重新定义基类中的函数,且要求函数的名称、参数类型以及返回值类型完全一致。如果基类中的函数为virtual,则通过基类指针指向派生类时,可以实现多态。如果是非virtual,通过基类指针,不论指向的是基类还是派生类,所调用的都是基类的函数;通过派生类指针,调用的则是派生类的函数。(即实际调用的函数由指针的静态类型决...
分类:其他好文   时间:2015-08-15 16:35:15    阅读次数:112
为什么有时候需要把析构函数定义为虚函数
为什么有时候需要把析构函数定义为虚函数 析构函数的作用是在对象撤销之前做必要的清理现场的工作,当派生类的对象从内存中撤销时一般先调用派生类的析构函数,然后在调用基类的析构函数,但是用new运算符建立了一个派生类对象,并且把他赋给基类指针,那么当用delete运算符撤销这个指针指向的存储空间的时候,....
分类:其他好文   时间:2015-08-13 11:41:55    阅读次数:117
虚函数的作用
可以让成员函数操作一般化,用基类的指针指向不同的派生类的对象时,基类指针调用其虚成员函数,则会调用其真正指向对象的成员函数,而不是基类中定义的成员函数(只要派生类改写了该成员函数)。若不是虚函数,则不管基类指针指向的哪个派生类对象,调用时都会调用基类中定义的那个函数。程序1:#i nclude us...
分类:其他好文   时间:2015-08-04 15:11:35    阅读次数:115
C++该typeid和dynamic_cast
1、typeid在没有虚拟函数的(不相关的动态绑定),typeid它只返回操作对象的实际类型2、typeid涉及到动态联编问题时(使用基类指针p或者引用p操作派生类对象),typeid(p)返回基类类型,typeid(*p)返回派生类类型;typeud(&p)返回基类类型。typeid(p)返回派生...
分类:编程语言   时间:2015-07-06 21:27:04    阅读次数:111
[00000]-[2015-06-22]-[00]-[C++ 虚函数]
C++语言的多态性 与 C++类的虚函数有关引入一个问题:定义一个基类指针,指向派生类对象,然后根据指针调用相应的方法,会有什么效果?class CBase{public: virtual void vfun() { coutvfun(); pBase->fun(); // 输出...
分类:编程语言   时间:2015-06-27 23:55:33    阅读次数:161
c++ private 继承
继承相关知识:private继承对派生类不可见(exist but not accessable)private 和protect 继承不允许基类指针指向派生类(编译error: 'BaseClass' is an inaccessible base of 'DerivedClass' reinterpret_cast可以将private继承的派生类指针强制转化为基类指针(通过pbase = st...
分类:编程语言   时间:2015-06-27 18:19:32    阅读次数:175
C++ 多态的实现原理
1)“多态”的关键在于通过基类指针或引用调用一个虚函数时,编译时不确定到底调用的是基类还是派生类的函数,运行时才确定 -- 这叫 “动态联编”。2)分析下面示例的运行结果class Base {public: int i; virtual void Print() {cout << "B...
分类:编程语言   时间:2015-06-24 22:31:41    阅读次数:265
Effective C++条款7
为多态基类声明virtual析构函数本节重点大家只要明白为什么要声明析构函数为virtual函数,即声明virtual析构函数的意义。我们知道,析构函数的作用就是实现多态polymorphic。那么如果我们动态创建一个derived派生类,由基类指针接受该派生类地址。那么我们如何释放这个派生类的内存? 如下代码:class A { //........... };class B:public A...
分类:编程语言   时间:2015-06-22 11:11:57    阅读次数:123
c++ --> 父类与子类间的继承关系
一、父类与子类父类与子类的相互转换1、派生类的对象可以赋给基类,反之不行2、基类的指针可以指向派生类,反之不行3、基类的引用可以初始化为派生类的对象,反之不行4、派生类指针必须强制转换为基类指针后才可以指向基类5、基类指针转换为派生类指针容易导致崩溃性错误6、虚基类的引用或派生不能转换为派生类cla...
分类:编程语言   时间:2015-06-08 11:14:07    阅读次数:143
c++类的内存管理
看了一篇讲c++内存管理的长博,感叹作者的牛逼之余也加点儿梗吧。。。 贴出博客地址:c++内存管理-- oayx大神!http://www.cnblogs.com/lancidie/archive/2011/08/05/2128318.html tips:在类内,多态基类的析构函数应该为虚函数 根据c++多态特性,当我们的基类指针指向子类对象时,当我们调用基类指针的某个函数为虚函数,...
分类:编程语言   时间:2015-06-01 18:58:25    阅读次数:130
183条   上一页 1 ... 11 12 13 14 15 ... 19 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!