C++程序问题,哪位高手帮我解释一下,为什么这个程序的输出结果不是0 ???????
#include <iostream>
#include <vector>
using namespace std;
class CLS
{
public:
int m_i;
public:
CLS( int i ) : m_i(i) {}
CLS()
{
CLS(0);
}
};
int main()
{
CLS obj;
cout << obj.m_i << endl;
return 0;
}
[解决办法]
这是我在百度中搜索到的相关内容,你看看吧
转载自:http://www.cnblogs.com/chio/archive/2007/10/20/931043.html
题目如下:问下列代码的打印结果为0吗?
#include <stdlib.h>#include <iostream>using namespace std;struct CLS{ int m_i; CLS( int i ) : m_i(i){} CLS() { CLS(0); }};int main(){ CLS obj; cout << obj.m_i << endl; system("PAUSE"); return 0;}
[解决办法]
呵呵,没想到被抢先发了。还是这个链接
http://www.cnblogs.com/chio/archive/2007/10/20/931043.html
有人在回复中,给出了解决方案:
#include <iostream>using namespace std;class CLS{public: int m_i;public: CLS( int i ) : m_i(i) { } CLS() { this->CLS::CLS(0); }};int main(){ CLS obj; cout << obj.m_i << endl; return 0;}