什么是重载,举一个重载的例子
时间: 2023-11-28 22:51:38 浏览: 33
重载(Overloading)指的是在同一个作用域内,函数名相同但是参数类型、参数个数或参数顺序不同的多个函数。当调用这个函数时,编译器会根据实参的类型、个数和顺序选择对应的函数进行调用。
举一个简单的重载函数的例子,比如在 C++ 中可以定义一个函数 `sum`,可以分别计算两个整数、两个浮点数或者两个字符串的和。代码如下:
```c++
#include <iostream>
#include <string>
using namespace std;
int sum(int a, int b) {
return a + b;
}
float sum(float a, float b) {
return a + b;
}
string sum(string a, string b) {
return a + b;
}
int main() {
int x = 1, y = 2;
cout << sum(x, y) << endl; // 输出 3
float m = 1.1, n = 2.2;
cout << sum(m, n) << endl; // 输出 3.3
string s1 = "Hello", s2 = "World";
cout << sum(s1, s2) << endl; // 输出 HelloWorld
return 0;
}
```
在上面的例子中,我们定义了三个 `sum` 函数,分别接受两个整数、两个浮点数或者两个字符串作为参数,实现了不同类型的数据相加。在 `main` 函数中,我们通过传递不同类型的参数来调用不同的 `sum` 函数。这样,我们就可以通过重载函数来提高代码的可读性和可维护性。