在编程领域,内联函数可以作为优化来提高性能。内联函数是对编译器的建议,邀请编译器考虑将函数的实现直接合并到调用者的代码中,从而有效地消除函数调用开销。然而,编译器保留自由裁量权,可能并不总是遵守内联请求。此外,内联函数通常会生成可链接的目标代码。
考虑静态内联,其在可选函数内联方面的操作与内联类似。但是,如果内联,它不会生成可链接的目标代码。这可以防止其他模块链接到内联函数。
深入研究 extern inline
extern inline 适合这个方案的什么地方?外部内联,主要出现在 C99 之前的编译器中,例如 GCC,其行为与内联和静态内联截然不同。
超越 C 和 C
这种区别是 C 独有的和 C .在 C 中,inline 的含义已经演变,它类似于 C89 中的 extern inline,但不包括行外定义的要求。
编译器变体
不同的编译器供应商和版本可以以不同的方式解释 extern inline。具体实现细节请参考编译器文档。
以上是C/C 中的'内联”、'静态内联”和'外部内联”有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!