C++的函数重载(定义初学)

前言:C语言不允许函数重名,这给程序员带来了不少的麻烦。

例如:

(1)写一个函数,求2个数中的最大值

double find_max(double a,double b);

(2)写一个函数,求3个数中的最大值

double find_max(double a,double b,double c);

find_max是个好名字,但是已经被占用了。

二、函数名重载

    在C++中,允许两个的函数名相同,但参数列表不同,称为“函数名重载”。

   参数列表相同:参数个数相同且参数类型相同

举例:

以下两个函数不同,因为参数个数不同
double find_max(double a,double b);
double find_max(double a,double b,double c);
以下两个函数不同,因为参数类型不同
double find_max(double a,double b);
double find_max(int a,int b);

   只比较个数和类型  与参数名称没关系 

//以下两个函数相同
double find_max(double a,double b);
double find_max(double c,double d);

注意:函数返回类型不同,不可以重载

//以下两个函数相同,和返回值无关
double find_max(double a,double b);
int find_max(double a,double b);

 

你可能感兴趣的:(C/C++的学习,算法分析与设计)