jcst.net
当前位置:首页 >> C++ 中如何调用基类的虚函数? >>

C++ 中如何调用基类的虚函数?

可以, 指明域 就可以了B b;b.fun() // 调用 B::funb.A::fun(); // 指示调用 A::fun

首先,虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数,所以,你可以根据指针来判断的,可以看看书上具体的代码来帮助你理解.

再重新定义基类对象,或者强制向上转型为基类型..然后用这个对象调用,还有关键词super可以调用基类函数,貌似你用的C加加

定义了虚函数之后,在执行的时候,系统会自动的匹配与之相对应的合适的成员函数.这里的话p是指向son的指针,那么他会先调用son里面的成员函数.

如果对象是基类的对象,则是基类自己的虚函数.

函数是私有的,那么只能把子类设为基类的友元类了.函数是虚函数,访问函数时把函数的全路径加上就好(基类名,函数名)

public和protected函数可以直接调用.如果被重载了可以使用 “基类::函数” 这样的形式调用 如果是private就不行了,除非在基类友元自己

直接用派生类的对象是可以的.但是虚函数的作用体现在多态上.比如类A是个基类,类B,C,D由类A继承.现在我要写个函数func1,对BCD三个类的对象都通用,函数内部调用BCD三个类都有的一个函数func2.但是BCD三个类是不同的类,

JAVA和C++都是面向对象语言.也就是说,它们都能够实现面向对象思想(封装,继乘,多态).而由于c++为了照顾大量的C语言使用者, 而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学.它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c++的固有缺陷. Java和c++的相似之处多于不同之处,但两种语言问几处主要的不同使得Java更容易学习,并且编程环境更为简单.

子类的构造函数默认是这样的:son():base() {};所以你想要默认调用父类的带参构造函数就把子类的构造函数写成这样:son():base(10){};

网站首页 | 网站地图
All rights reserved Powered by www.jcst.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com