| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 725 人关注过本帖
标题:有个程序看不明,求救!!
只看楼主 加入收藏
wujingqian
Rank: 1
来 自:遥远的星球
等 级:新手上路
帖 子:77
专家分:2
注 册:2008-3-12
结帖率:100%
收藏
 问题点数:0 回复次数:7 
有个程序看不明,求救!!
#include"iostream.h"
class CSample
{   
  private:
    int i;
    static int k;
  public:Csample();
         void Display();
};
Csample::cSample()
{
   i=0;
   k++;
}
void CSample::Display()
{
  cout<<"i="<<i<<",k="<<k<<endl;
}
int CSample::k=0;
void main()
{
  CSample a,b;
  a.Display();
  b.Display();
}
输出结果是:
i=0;k=2;
i=0;k=2;
为什么两个都是K=2?
搜索更多相关主题的帖子: private include public 
2008-03-18 21:28
key_0423
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-3-17
收藏
得分:0 
static声明的是静态局部变量,在函数调用结束后不会消失而保留原值,在下一次该函数调用时,该变量保留上一次函数调用结束时的值。
对于这个程序:
CSample a,b;
创建了2个对象,第一次创建a时,调用构造函数CSample::CSample(),使得i=0;k=1;
               第二次创建a时,调用构造函数CSample::CSample(),i重新初始化为0,k在1的基础上加1,使得i=0;k=2;
————————————————————————————————————————————
代码有点小问题,改之后是:
#include"iostream.h"
class CSample
{   
private:
    int i;
    static int k;
public:
    CSample();
    void Display();
};
CSample::CSample()
{
    i=0;
    k++;
}
void CSample::Display()
{
    cout<<"i="<<i<<",k="<<k<<endl;
}
int CSample::k=0;
void main()
{
    CSample a,b;
    a.Display();
    b.Display();
}

一定要幸福(*^__^*)
2008-03-18 22:20
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
楼上沙发被你坐了..呵呵..他的大小写有问题..

学习需要安静。。海盗要重新来过。。
2008-03-18 22:22
wujingqian
Rank: 1
来 自:遥远的星球
等 级:新手上路
帖 子:77
专家分:2
注 册:2008-3-12
收藏
得分:0 
哦 ,明了,谢谢
2008-03-18 22:32
key_0423
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-3-17
收藏
得分:0 
[bo]以下是引用 [un]sunkaidong[/un] 在 2008-3-18 22:22 的发言:[/bo]

楼上沙发被你坐了..呵呵..他的大小写有问题..

恩 ^_^
第一个沙发

一定要幸福(*^__^*)
2008-03-18 22:37
key_0423
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-3-17
收藏
得分:0 
不客气,大家互相学习~

一定要幸福(*^__^*)
2008-03-18 22:38
a19870502
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2007-10-31
收藏
得分:0 
k的默认值是0?
2008-03-19 19:14
b003_xinkai
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-3-19
收藏
得分:0 
全局变量,你没创建一个对象,构造函数都会调用一次,所以。K是2,
2008-03-19 21:31
快速回复:有个程序看不明,求救!!
数据加载中...
 
   



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

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