c++

c++实现函数重载形式

小樊
83
2024-11-24 19:25:06
栏目: 编程语言

在C++中,函数重载(Overloading)是指在同一个作用域内声明多个同名函数,但它们的参数列表不同

#include <iostream>
using namespace std;

// 函数重载:加法运算符
int add(int a, int b) {
    return a + b;
}

double add(double a, double b) {
    return a + b;
}

// 函数重载:减法运算符
int subtract(int a, int b) {
    return a - b;
}

double subtract(double a, double b) {
    return a - b;
}

// 函数重载:乘法运算符
int multiply(int a, int b) {
    return a * b;
}

double multiply(double a, double b) {
    return a * b;
}

// 函数重载:除法运算符
int divide(int a, int b) {
    if (b == 0) {
        cout << "Error: Division by zero" << endl;
        return INT_MAX;
    }
    return a / b;
}

double divide(double a, double b) {
    if (b == 0) {
        cout << "Error: Division by zero" << endl;
        return NAN;
    }
    return a / b;
}

int main() {
    int a = 10, b = 5;
    double c = 10.5, d = 5.5;

    cout << "Add: " << add(a, b) << endl;
    cout << "Add: " << add(c, d) << endl;

    cout << "Subtract: " << subtract(a, b) << endl;
    cout << "Subtract: " << subtract(c, d) << endl;

    cout << "Multiply: " << multiply(a, b) << endl;
    cout << "Multiply: " << multiply(c, d) << endl;

    cout << "Divide: " << divide(a, b) << endl;
    cout << "Divide: " << divide(c, d) << endl;

    return 0;
}

在这个示例中,我们为加法、减法、乘法和除法运算符提供了重载函数。每个函数都有两个版本,一个用于整数参数,另一个用于浮点数参数。这样,我们可以根据需要选择合适的函数版本来执行相应的操作。

0
看了该问题的人还看了