2 lansexinchen lansexinchen 于 2014.10.22 19:32 提问

遇到全局变量与局部变量的问题

int b;
int c;

int main()
{
cout.setf(ios::hex, ios::basefield);
cout << &b << endl;
int b(b);
cout << &b << endl;
cout << "--------------------" << endl;
cout << &c << endl;
int c = c; //到这里程序崩溃
cout << &c << endl;
system("pause");
return 0;
}

程序运行到int c = c时崩溃,百思不得其解,用类实验了一下
class a
{
public:
a(const a & t)
{
cout << &t << endl;
}
a()
{
}
};

a i;
a x;

int main()
{
cout.setf(ios::hex, ios::basefield);
cout << 0xf << endl;
cout << hex <<&i << endl;
a i(i);
cout << &i << endl;
cout << "---------------------" << endl;

cout  <<&x << endl;
a x = x;    
cout << &x << endl;
system("pause");
return 0;

}
类的代码段程序运行没有问题。
问题有两点:
1、int c(c);在C++中是怎么实现的,是对int进行了封装使其调用构造函数吗
2、int c = c;为什么会崩溃

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!