内联 / 函数 / 编程语言 · 2023年 10月 10日 0

内联

48 次浏览

爸爸为了培养孩子的独立能力,会把任务交给孩子并观察孩子做的结果。但有的时候,妈妈看到孩子因为完不成而伤心难过时,会毫不犹豫二话不说帮孩子的事情做掉。这也是内联。

内联和宏

C/C++宏可以提供内联同样的作用,没有额外函数调用开始和结束指令的消耗。值得注意的是,宏是预处理完成,调试不易,宏展开副作用也是一个问题。

内联函数

  • C99和C++支持。
  • GNU C89支持。
  • 某些编译器提供非标准说明符,如__attribute__((always_inline))或__forceinline等。

内联变量

C++17把内联扩展到类静态变量成员,既然变量内联,编译器不需要分配额外的空间。