我不确定为什么不兼容的初始化器与参数类型int不兼容

时间:2019-04-17 22:29:07

标签: visual-c++

基本上,我想显示我的考试成绩及其平均值,但由于这些错误,我无法显示

我试图显示无效并将其放在类中并在main中声明它,但这没用

#include <iostream>
#include <string>

using namespace std;

class TestScore 
{
public:
    TestScore() {};
    TestScore(int arr[], int SIZE) {};
    void testAvg(int arr[], int SIZE);
    void displayArray(int arr[], int Size);

};
void TestScore::testAvg(int arr[], int SIZE)
{
    int sum = 0;
    for (int i = 0; i < SIZE; i++)
    {
        sum = sum + arr[i];
        try
        {
            if ((arr[i] > 100) || (arr[i] < 0))
            {
                throw(1);
            }
        }
        catch (int n)
        {
            cout << "Error" << endl;
        }
    }

    int average = sum / SIZE;


}

void TestScore::displayArray(int arr[], int SIZE)
{
    for (int i = 0; i < SIZE; i++)
    {
        cout << arr[i] << endl;
    }
}
void main()
{
    const int SIZ = 5;
    int Grade[SIZ] = { 89,65,99,100,81 };

    TestScore T(int Grade, int SIZ);
    T(Grade, SIZ).testAvg(Grade, SIZ);
    T(Grade, SIZ).displayArray(Grade, SIZ);
    system("pause");
}

我希望它能显示我的分数的平均值,所以基本上,我希望显示5个测试分数,然后显示它们的平均值。

1 个答案:

答案 0 :(得分:0)

TestScore T(int Grade, int SIZ);声明一个名为T的函数,该函数带有两个int类型的参数。然后,您调用该函数,并传递类型为int[5]而不是int的参数。因此出现错误消息。

此外,该功能未在任何地方实现。坦白说,我不理解您要使用该函数声明做什么。没什么意义。