c++题目,请大神帮忙改错吧
#include<iostream>usingnamespacestd;classX{private:inta=0;int&b;constintc=0;voidsetA(...
#include <iostream>
using namespace std;
class X
{
private:
int a=0;
int &b;
const int c=0;
void setA(int i){a=i;}
X(int i){a=i;}
public:
int X(){a=b=0;}
X(int i,int j,int k=0):c(k){a=i;b=j;}
void setC(int k) const {c=c+k;}
};
int main()
{
X x1;
X x2(2);
X x3(1,2,3);
x1.setA(3);
return 0;
}
看看哪里错了
请帮忙写出修改后的运行结果 展开
using namespace std;
class X
{
private:
int a=0;
int &b;
const int c=0;
void setA(int i){a=i;}
X(int i){a=i;}
public:
int X(){a=b=0;}
X(int i,int j,int k=0):c(k){a=i;b=j;}
void setC(int k) const {c=c+k;}
};
int main()
{
X x1;
X x2(2);
X x3(1,2,3);
x1.setA(3);
return 0;
}
看看哪里错了
请帮忙写出修改后的运行结果 展开
2个回答
展开全部
我勒个去 你这个错误太多了把
引用“int &b;”没有初始化
构造函数“int X(){a=b=0;}”不能有返回类型;
常量“const int c=0;” 不能被改变数值 你看你还这样写“void setC(int k) const {c=c+k;}”
c 也不能用构造函数X(int i,int j,int k=0):c(k){a=i;b=j;}这样赋值,因为是常量;
对了 “int a=0;”非静态成员变量也不能赋初值,感觉你这代码没几句对的;
求采纳!!
追问
这个题目修改之后的运行结果是什么
追答
额 你这个错误很多没法改。因为我知道你想改成什么样? 还有 你这个连输出都没有,运行结果你也看不到
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询