程序是对现实世界的 描述。(遇到问题,不妨从现实角度重新考虑。知识切记学死了。)
只要发现程序中有多个函数的意义相似,只是处理的数据不同,就可以使用函数重载。以统一的形式实现对不同数据的处理。
函数重载的合理性:
int max(int a, int b);
float max(float a, float b);
double max(double a, double b);
以上三个函数分别接受int float 和double类型的参数,具有不同 的参数类型,因此是正确的函数重载。
而下面,:
int max(int a, int b)
float max(int a, int b) //仅仅是返回值不同,不能构成合法的函数重载
1 //函数重载
2 #include <iostream>
3 #include<fstream>
4
5 using namespace std;
6
7 int Add(int a, int b);
8 float Add(float a, float b);
9
10 int main()
11 {
12 int nSum = Add(2, 3);
13 cout << "2+3=" << nSum << endl;
14
15 float fSum = Add(2.5f, 3.7f);
16 cout << "2.5+3.7=" << fSum << endl;
17
18
19 cin.ignore();
20 cin.get();
21 return 0;
22 }
23
24 //***********************************************
25 int Add(int a, int b)
26 {
27 return a + b;
28 }
29
30 float Add(float a, float b)
31 {
32 return a + b;
33 }