C++程序,主函数当中这两句什么意思啊?而且运行时报错?什么情况??求高手解答啊!谢谢了!

#include<iostream>
using namespace std;
class S
{
int i;
public:
S(){cout<<"null";}
S(int s){cout<<"int";}
S(S &s){cout<<"copy";}
void disp(){cout<<i;}
};
int main()
{
S s1=1;
s2=S(2);
system("pause);
return 0;
}

#include<iostream>
using namespace std;
class S
{
int i;
public:
S(){cout<<"null"<<endl;;}
S(int s){cout<<"int"<<endl;;}
S(S &s){cout<<"copy"<<endl;;}
void disp(){cout<<i;}
};
int main()
{
/*
S s1=1; //类型不一样 s1为S型,1为int型 类型不匹配
s2=S(2); //s2都没有定义
system("pause); //引号要打全
*/

S s1,s2(2); S s3(s2);
return 0;}追问

没看太懂!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-05
s1是个类对象实例,根据你的class S定义,应该这么写:
S s1=S(1);
而s2,则是前面少了个S,应该这么写:S s2=S(2);
最后,还有个错是pause少了个右括号
相似回答