内联函数
在Python中的存在宏定义中,可以将指定的数字常量、表达式或代码段。在编译预处理阶段,直接代换插入到宏定义的调用处。
在C++中,为了减少函数调用的开销,引入了内联函数的机制,在编译器处理对内联函数的调用语句时,将整个函数的代码插入到调用语句处,而避免产生调用。
针对一些反复执行且本身执行较快的函数,内联函数能够避免调用函数所产生的的额外时间开销。
c++中的一个实例:
inline int Max(int a, int b)
{
if (a > b) return a;
return b;
}
函数重载
对于具有相同或相似功能的一些函数,其传入参数的个数与类型不尽相同,但我们期望使用同样的名字进行命名,在后续调用时能够较为方便地记忆和使用。
定义: 一个或多个函数,名字相同,然而参数个数或参数类型不相同,这叫做函数的重载。
函数的重载使得函数命名变得简单。在使用过程中,编译器会根据调用语句中的实参的个数和类型对应该调用哪个函数进行判断。
c++中的一个实例:
int Max(double fi, double f2) { }
int Max(int n1, int n2) { }
int Max(int n1, int n2, int n3) { }
函数缺省参数
定义函数的时候,可以使得形参列表中的最右边连续若干个参数有缺省值。在调用函数时,允许相应位置不写参数,而自动取缺省值。
c++中的一个实例:
void func(int x1, int x2 = 2, int x3 = 3)
{ }