page contents

对于一个频繁使用的短小函数,应该使用什么来实现?有什么优缺点?

轩辕小不懂 发布于 2021-12-31 11:32
阅读 883
收藏 0
分类:C/C++开发
  • c
  • c++
  • 2787
    Nen
    Nen
    - 程序员

    应该使用inline内联函数,即编译器将inline内联函数内的代码替换到函数被调用的地方。


    优点:

    在内联函数被调用的地方进行代码展开,省去函数调用的时间,从而提高程序运行效率;

    相比于宏函数,内联函数在代码展开时,编译器会进行语法安全检查或数据类型转换,使用更加安全;


    缺点:

    代码膨胀,产生更多的开销;

    如果内联函数内代码块的执行时间比调用时间长得多,那么效率的提升并没有那么大;

    如果修改内联函数,那么所有调用该函数的代码文件都需要重新编译;

    内联声明只是建议,是否内联由编译器决定,所以实际并不可控。

    请先 登录 后评论