“level”重载
#include<iostream>
using namespace std;
int array1[6][4] = {{60,80,90,75},
{75,85,65,77},
{80,88,90,98},
{89,100,78,81},
{62,68,69,75},
{85,85,77,91}
};
int& level1(int grade[], int size, int& tA, int tB);
int main()
{
int typeA = 0, typeB = 0;
int student = 6;
int gradesize = 4;
for (int i = 0;i < student;i++)
level1(array1[i], gradesize, typeA, typeB)++;
cout << "number of typeA is" << typeA << endl;
cout << "number of typeB is" << typeB << endl;
return 0;
}
int& level1(int grade[ ], int size, int& tA, int& tB)
{
int sum = 0;
for (int i = 0;i < size;i++)
sum += grade[i];
sum /= size;
if (sum >= 80)
return tA;
else
return tB;
}
注意12行最后一个参数于函数定义不同