1. 子类拥有了父类的public财产(私有成员其实也有,但是访问不了),通过子类调用函数时,编译器先在子类中找相应的函数,找不到的话再去父类找。
如此一来,如果父类和子类定义了一样的函数(包括参数列表),子类的函数会覆盖父类函数。
如果,父类定义了子类的同名函数,但是参数列表不同,子类的也会被覆盖隐藏,如
果想通过子类调用父类的函数,需要显示的说明,比如 b.A::XXXX(p1, p2)
#include <iostream>
using namespace std;
class A
{
public:
A() {}
~A() {}
void print() { cout << "This is A\n"; }
};
class B: public A
{
public:
B() {}
~B() {}
void print() { c

本文探讨了C++中的继承特性,包括函数覆盖和隐藏。通过实例展示了如何通过子类调用父类的函数,以及如何解决同名函数的多态问题。文章提到了虚函数的作用,并解释了如何通过作用域运算符或using关键字来访问隐藏或覆盖的函数。
最低0.47元/天 解锁文章
2024

被折叠的 条评论
为什么被折叠?



