c++

C++如何扩展sum函数的功能

小樊
84
2024-07-05 19:38:25
栏目: 编程语言

要扩展sum函数的功能,可以添加额外的参数或重载函数。以下是一些常见的方法:

  1. 添加额外的参数:您可以添加一个额外的参数来指定要执行的操作,例如求和、平均值、最大值、最小值等。例如,您可以这样修改sum函数:
double calculate(int* arr, int size, char op) {
    double result = 0;
    for (int i = 0; i < size; i++) {
        if (op == 'sum') {
            result += arr[i];
        } else if (op == 'average') {
            result += arr[i];
        } else if (op == 'max') {
            result = max(result, arr[i]);
        } else if (op == 'min') {
            result = min(result, arr[i]);
        }
    }
    return result;
}
  1. 重载函数:您也可以重载sum函数,创建多个具有不同功能的版本。例如,您可以这样定义sum函数的重载版本:
double sum(int* arr, int size) {
    double result = 0;
    for (int i = 0; i < size; i++) {
        result += arr[i];
    }
    return result;
}

double average(int* arr, int size) {
    double sum = 0;
    for (int i = 0; i < size; i++) {
        sum += arr[i];
    }
    return sum / size;
}

int max(int* arr, int size) {
    int max = arr[0];
    for (int i = 1; i < size; i++) {
        if (arr[i] > max) {
            max = arr[i];
        }
    }
    return max;
}

int min(int* arr, int size) {
    int min = arr[0];
    for (int i = 1; i < size; i++) {
        if (arr[i] < min) {
            min = arr[i];
        }
    }
    return min;
}

通过以上两种方式,您可以根据需要扩展sum函数的功能。

0
看了该问题的人还看了