内联函数:首先,我们来理解函数调用。当我们定义一个子函数,然后再main函数中调用,这个时候,我们的参数和返回值都是放在栈里面的。如果,这个函数要反复调用很多次,那么程序的开销很大,效率不是很高。这个时候就有了内联函数的概念了。内联函数和一般函数调用不同的是,每一次函数调用的时候编译器会把函数的代码修改后,直接插入调用语句处。这样的缺点是,会增大程序的体积。
那么内联函数的定义,是在前面加inline。比如:inline int Max(int a, int b) { if ( a > b) return a;else return b; } 这就是一个内联函数。那么我们在调用的时候,比如,K = Max(x, y);编译器,就会在调用处,插入:if(x >y) K = a;else K =b ; 这样的语句。 而不是把参数传入栈,然后再从栈里取出返回值。
函数重载:一个或者多个函数,函数名字相同,但是传入的参数不同,或者类型不同,叫函数的重载。比如
int Max(int a, int b){retrun max};
int Max(float a, float b){retrun max};