首页 > 代码库 > inline函数的总结

inline函数的总结

在函数返回类型前加上关键字inline就可以将函数指定为内联函数:

1 inline const string& shortString(const string &s1, const string &s2) {2     return s1.size() < s2.size() ? s1 : s2;3 }

函数指定为内联函数,(通常)就是将它在程序调用点上”内联地“展开。假设我们将shortString定义为内联函数,则调用:

1 cout<<shortString(s1,s2)<<endl;

在编译时展开为:

1 cout<<(s1.size() < s2.sizre()  ? s1 : s2)<<endl;

 

内联函数的优点: 

  可以避免调用函数的开销

内联函数的缺点:

  由于将对函数的每一个调用都以函数本体替换之。所以会增加目标代码的大小。造成代码膨胀。这将导致程序体积太大,不利于在内存不大的机器上运行。

 

inline函数的总结