子类中的成员函数覆盖父类(name hiding)

Posted buddho

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了子类中的成员函数覆盖父类(name hiding)相关的知识,希望对你有一定的参考价值。

只要子类中出现了和父类中同名的函数,父类中的所有这个名字的函数,就被屏蔽了。

静态函数成员也是如此?经过代码验证,确实如此。

#include <iostream>

using namespace std;

class A{
public:
        void print(){cout << "A::print()" << endl;}
};

class B:public A{
public:
        void print(int i ){cout << "B::print(int i)" << endl;}
};

int main()
{
        B b;
        b.print(0);
        b.A::print();

   b.print();// 这个是编译不通过的。  
return 0; }

 

以上是关于子类中的成员函数覆盖父类(name hiding)的主要内容,如果未能解决你的问题,请参考以下文章

C++ 中,类的继承:父类当使用虚函数时候,子类对该函数进行重写的话,属于子类成员函数对虚函数的覆盖!

Java-继承与覆盖摘抄

虚函数中的继承关系

Java:子类实现接口,但父类覆盖接口的成员?

JAVA-初步认识-第八章-继承-子父类中成员函数特点-覆盖

子类能不能继承父类的成员变量