加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 外部内联函数在所有翻译单元中必须具有相同的地址.这是怎么

发布时间:2020-12-16 03:19:10 所属栏目:百科 来源:网络整理
导读:根据该标准,extern内联函数在所有翻译单元中必须具有相同的地址. 如何在编译器中实现?我的意思是当我编译一些翻译单元时,我不知道其他TU会是什么样的.那我怎么能到处都有相同的地址呢? 解决方法 这取决于实现,但通常由链接器解决.每个编译的翻译单元将生成
根据该标准,extern内联函数在所有翻译单元中必须具有相同的地址.

如何在编译器中实现?我的意思是当我编译一些翻译单元时,我不知道其他TU会是什么样的.那我怎么能到处都有相同的地址呢?

解决方法

这取决于实现,但通常由链接器解决.每个编译的翻译单元将生成一个包含该函数副本的目标文件,以某种方式标记,以便链接器知道它应该期望(和接受)重复.链接器将包含其中一个,丢弃其他链接器,并解析对该函数的任何引用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读