m0_38024157 2017-03-22 13:16 采纳率: 100%
浏览 808
已采纳

能帮我看看析构函数哪里错了吗?

#include
using namespace std;
class student
{
static int total;
int score;
int *a;
public:
static int i;
static int count;
student();
~student();
void scoretotalcount(double);
static int sum(student c)
{
for (int i = 0; i < count; i++)
{
total = total + c.a[i];
}
return total;
}
static double average()
{
return double(total) / count;
}
};
int student::count = 0;
int student::total = 0;
int student::i = 0;
student::student()
{
cin >> count;
a = new int[count];
}
student::~student()
{
delete[]a;
}
void student::scoretotalcount(double s)
{
a[i] = s;
i++;
}
int main()
{
student c;
for (int i = 0; i < c.count; i++)
{
double s;
cin >> s;
c.scoretotalcount(s);
}
cout << c.sum(c) << endl;
cout << c.average() << endl;
}

  • 写回答

5条回答 默认 最新

  • gaozeng851998821 2017-03-22 14:27
    关注

    你可以把 static int sum(student c) 这个函数的参数定义为 引用,即 static int sum(student & c) 。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料