详解C++中的内联函数和函数重载

2020-01-06 13:49:36王振洲

通常在程序设计过程中,我们会将一些频繁被调用的短小函数声明为内联函数。

应当说明:对函数作inline声明,只是程序员对编译系统提出的一个建议,也就是说它是建议性的,而不是指令性的。并非一经指定为inline,编译系统就必须这样做。编译系统会根据具体情况决定是否这样做。

一个完整的示例:

 

 
  1. #include <iostream>  using namespace std; 
  2. int max(int, int, int); //函数声明,左端也可以加inline  int main( ) 
  3. {  int i=10, j=20, k=30, m; 
  4. m = max(i, j, k);  cout<<"max="<<m<<endl; 
  5. return 0;  } 
  6. inline int max(int a, int b, int c) //定义max为内联函数  { 
  7. if(b>a) a=b;  if(c>a) a=c; 
  8. return a;  } 

运行结果:

 

 
  1. max=30