| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1055 人关注过本帖
标题:派生类的方法疑问
取消只看楼主 加入收藏
H
Rank: 1
等 级:新手上路
帖 子:33
专家分:5
注 册:2009-4-18
结帖率:75%
收藏
 问题点数:0 回复次数:4 
派生类的方法疑问
#include <iostream.h>
class CRoot{
  public:
    int small;
    CRoot()
    {small= 2; }
    CRoot(int n)
    { small = n;}
    void showsmall()
    { cout<<"small="<<small<<endl; }
};
class CDer1:public CRoot
{
  public:
      CDer1(int m):CRoot(m)      { }
};
class CDer2:public CRoot
{
    public:
       int small;
       CDer2(int n=0) {small=n; }
};
void main()
{     CRoot A;
      CDer1 B(3);
      CDer2 C;
      A.showsmall(); B.showsmall(); C.showsmall();
 }
运行结果:
 
为什么是small=2
        small=3
        small=2

搜索更多相关主题的帖子: 派生类 疑问 
2009-12-28 21:04
H
Rank: 1
等 级:新手上路
帖 子:33
专家分:5
注 册:2009-4-18
收藏
得分:0 
我昨天刚学的,请多多指教!

[url=http://shop59823293.]韩版 优雅 通勤 时尚女包[/url]
2009-12-28 21:42
H
Rank: 1
等 级:新手上路
帖 子:33
专家分:5
注 册:2009-4-18
收藏
得分:0 
a,b,c我都看不懂呢。。。。。。      

[url=http://shop59823293.]韩版 优雅 通勤 时尚女包[/url]
2009-12-28 22:41
H
Rank: 1
等 级:新手上路
帖 子:33
专家分:5
注 册:2009-4-18
收藏
得分:0 
a为什么不是0?b为什么是3,c为什么是2?

[url=http://shop59823293.]韩版 优雅 通勤 时尚女包[/url]
2009-12-28 22:51
H
Rank: 1
等 级:新手上路
帖 子:33
专家分:5
注 册:2009-4-18
收藏
得分:0 
a,b都明白了。

c还是不明白。是不是因为CDer2 C无参数,而他自己的方法只有有参数的,所以它自动调用父类的构造函数呢?

[url=http://shop59823293.]韩版 优雅 通勤 时尚女包[/url]
2009-12-28 22:59
快速回复:派生类的方法疑问
数据加载中...
 
   



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

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