码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 继承 二

时间:2019-11-16 23:28:07      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:block   c++ 继承   std   ace   work   private   父类   cte   out   

C++隐藏

父子关系,成员同名,才能隐藏

#include <iostream>
#include <cstdlib>

using namespace std;


//.h
class Person {
public:
    void eat();

protected:
    string m_strName;
    int m_iAge;
private:
    string test;
};

class Worker : public Person {
public:
    void eat();
    int m_iSalary;
protected:
    string m_strName;
private:
};


//cpp  这叫定义
void Person::eat() {
    cout<<"Person::eat()"<<endl;

}
void Worker::eat() {
    Person::m_strName="kitty"; //访问父类的隐藏成员
    cout<<"Worker::eat()"<<endl;
    cout<<Person::m_strName<<endl;
}

int main() {
    Person p;
    p.eat();
    Worker w;
    w.Person::eat();//访问父类的隐藏函数
    w.eat();
    return 0;
}

C++ 继承 二

标签:block   c++ 继承   std   ace   work   private   父类   cte   out   

原文地址:https://www.cnblogs.com/wuyanzu/p/11874340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!