注册 登录
编程论坛 C++教室

[求助]构造函数的输出~

六道 发布于 2007-10-26 15:08, 515 次点击

#include<iostream.h>

class Myclass
{
public:
Myclass();
Myclass(int);
~Myclass();
void display();
protected:
int number;
};

Myclass::Myclass()
{
cout<<"constructing normally\n";
}
Myclass::Myclass(int m)
{
number=m;
cout<<"constructing a number"<<number<<endl;
}

void Myclass::display()
{
cout<<"display a number"<<number<<endl;
}
Myclass::~Myclass()
{
cout<<"destructing \n";
}

void main()
{
Myclass obj1;
Myclass obj2(20);
obj1.display();//输出的是随机数?
obj2.display();
}
红色部分是因为number是局部变量,未初始化,所以存放在内存中的是随机数?????

2 回复
#2
yuyunliuhen2007-10-26 16:26
局部变量是从堆栈中分配存储空间的,局部变量不经初始化,他的值就是随机值,是不确定的。
#3
六道2007-10-26 17:06
谢谢楼上朋友~
1