微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C:内联函数和链接时间代码生成

直到一段时间以前我的代码库非常接近#include地狱.每当我更改一个甚至是稍微重要的.h文件时,几乎所有文件都被重新编译.
如此高的标头依赖性的主要原因是我有许多需要内联的小函数,我的印象是,对于内联工作,它们需要与调用代码在同一个翻译单元中,所以它们需要是在标题中.对于内联函数甚至编译其他标题也需要包含在标题中,ad infimum.

输入link-time code generation(在Visual Studio中).其中一个主要优点是现在的内联函数可以跨越翻译单元.
但我仍然不确定.我怎么能真正确定这些功能真的被内联?我意识到无论我在哪里定义函数,编译器基本上可以做任何想做的事情.

有没有办法检查内联的内容

解决方法

我知道在C中这是禁忌,但你可以将这些函数实现为预处理器宏.对不起,我现在用肥皂洗嘴.

原文地址:https://www.jb51.cc/c/119727.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐