长颈鹿类对动物类的继承 找错

来源:互联网 发布:中国 意识形态 知乎 编辑:程序博客网 时间:2024/05/17 04:30
/* *程序的版权和版本声明部分: *Copyright(c)2014,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:李新鹏 *完成日期:2014  年 5 月 26 日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述:方程  *问题描述:长颈鹿类对动物类的继承 找错*程序输出:无*问题分析: *算法设计: */  #include <iostream>using namespace std;class Animal    //动物类{public:    Animal() {}    void eat()    {        cout << "eat\n";    }protected:    void play()    {        cout << "play\n";    }private:    void drink()    {        cout << "drink\n";    }};class Giraffe: public Animal   //长颈鹿类{public:    Giraffe() {}    void StrechNeck()    {        cout << "Strech neck \n";    }private:    void take()    {        eat();        // 正确,公有继承下,基类的公有成员对派生类可见        drink();      // 错误,公有继承下,基类的私有成员对派生类不可见        play();       // 正确,公有继承下,基类的保护成员对派生类可见    }}; int main(){    Giraffe gir;      //定义派生类的对象    gir.eat();        // 正确,公有继承下,基类的公有成员对派生类对象可见    gir.play();       // 错误,公有继承下,基类的保护成员对派生类对象不可见    gir.drink();      // 错误,公有继承下,基类的私有成员对派生类对象不可见    gir.take();       //错误,类的私有成员对类对象不可见    gir.StrechNeck(); //正确,类的公有成员对类的对象可见    Animal ani;   eat();        // 正确,类的公有成员对的类对象可见    ani.play();       // 错误,类的保护成员对类对象不可见   ani.    ani.drink();      // 错误,类的私有成员对类对象不可见    ani.take();       //错误,派生类的成员对基类对象不可见    ani.StrechNeck(); //错误,派生类的成员对基类对象不可见    return 0;}

运行结果:

心得体会:

 

                                             
0 0
原创粉丝点击