C++学习笔记(4.内联函数和重载函数)

  1. 内联函数
    1.函数调用是有时间开销的,为了减少函数调用的开销,引入了内联函数机制;
    2.编译器处理对内联函数的调用语句时,是将整个函数的代码插入到调用语句处,不会产生调用函数的语句。
    3.在函数定义前面加“inline”关键字,就可以定义内联函数
inline int Max(int a,int b)
{
  if(a>b)return a;
  return b;
}
  1. 函数重载
    1.定义:一个或多个函数,名字相同,然而参数个数或者参数类型不相同
    2.以下三个函数是重载关系:(在C语言中不能写2个函数名相同的函数)
int Max(double f1,double f2){}
int Max(int n1,int n2){}
int Max(int n1, int n2, int n3){}
Max(3,2.4//会报错,因为二义性

函数重载使得函数命名变得简单,编译器根据语句中的实参的个数和类型判断应该调用哪个函数
重载函数一定是名字相同,但是参数表不同,如果只有返回值类型不同,不叫重载,叫重复定义

  1. 函数的缺省参数
    在C++中,定义函数的时候可以让最右边的连续若干个参数有缺省值,那么调用函数的时候,若相应位置不写参数,参数就是缺省值
void fun(int x1,int x2 =2 ; int x3 =3){}
fun(10);//等价于fun(10,2,3)
fun(10,8)//等价于fun(10,8,3)
fun(10,,8)//不行,只能最右边的连续若干个参数缺省

函数参数可缺省的目的在于提高程序的可扩充性

你可能感兴趣的:(C++)