| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4098 人关注过本帖
标题:类和类的继承的简单使用
只看楼主 加入收藏
ldsh304
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:242
专家分:755
注 册:2016-1-18
结帖率:100%
收藏
已结贴  问题点数:11 回复次数:2 
类和类的继承的简单使用
程序代码:
# include <iostream>
using  namespace std;

class Animal 

 {
public:
     Animal(int heigh, int weight)//构造函数
    {
//        cout <<"Animal construct"<<endl;
    }
     ~Animal()//析构函数
    {
//        cout <<"Animal 析构函数 ^_^ " << endl;
    }
     void eat()
     {
         cout <<"animal eat!" <<endl;
     }

     void sleep()
     {
             cout <<"animal sleep!" <<endl;
     }
     void breakthe()
     {
             cout <<"animal breakthe!" <<endl;
     }

 };

class fish : public Animal//继承
{
public:
     fish() : Animal(400, 300), a(1)//析构函数,对a初始化
    {
//        cout <<"fish construct"<<endl;
    }
     ~fish()
     {
//        cout <<"fish deconstruct"<<endl;
    }
     void breakthe()
     {

 //        Animal :: breakthe();//访问Animal类中的breaktne()函数
        cout << "fish bublle ^_^" << endl;
     }
private:
     const int a;

 };

void fn(Animal *pAn)

 {

     fish *fi;
     cout << &pAn << endl;
     cout << &fi << endl;
     fi->breakthe();
     pAn->breakthe();

 }
int main()

 {
     Animal an(3, 5);
     Animal *pAn;
     fish fi;
    
     pAn = &fi;
     fn(pAn);
     return 0; 

 }

在vc++6.0中的结构:
——————————————————
0019FED4
0019FEC8
fish bublle ^_^
animal breakthe!
-------------------------------------

请问一下执行pAn->breaktne();的结果为啥是animal breaktne!
我想的是pAn = &fi;
那么执行 pAn->breaktne(); 后应该显示:fish bublle ^_^



[此贴子已经被作者于2016-5-1 10:41编辑过]

2016-05-01 09:25
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9029
专家分:54050
注 册:2011-1-18
收藏
得分:11 
否则C++增加virtual这个关键字是吃饱撑的?
2016-05-03 08:35
ldsh304
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:242
专家分:755
注 册:2016-1-18
收藏
得分:0 
回复 2楼 rjsp
额,我想知道 不加virtual时,为啥会出现这种情况?
2016-05-03 12:23
快速回复:类和类的继承的简单使用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033587 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved