C++ inline(内联什么时候使用)(三)

2014-03-10 12:51:30 · 作者: · 浏览: 184

 

    例如  inline int small(int a,int b)

    { return a < b a : b ;

    }

    cout

    《 small ( a, b )

    《 endl ;

    等同于  cout

    《 (a < b a : b)

    《 endl;

    编译器会将函数调用语句转换为函数代码,再进行编译。inline只是你给编译器提一个建议,希望它将函数内联,至于它会不会执行就不一定了。

    基本上复杂的函数它是不会同意的,就算同意了,也只会使你的编译变得更将浪费时间,而执行速度得不到什么提升。还有,一些编译器是不会通过含有递归的内联函数的。

    记住,短小而且反复调用的函数进行内联就可以了。