编译器如何跨翻译单元检测重复定义。假设头文件中有一个 extern const 变量声明。
如果在多个翻译单元中使用此头文件 - 每个翻译单元都有单独的定义 - 每个 TU 对象创建都会成功,但是在创建最终可执行文件时会引发错误。
在链接每个 TU 时(在创建可执行文件期间)是否创建了一个参考表来说明这些重复?
有关此主题的任何链接都会有所帮助。
提前感谢您的解释。
编译器如何跨翻译单元检测重复定义。假设头文件中有一个 extern const 变量声明。
如果在多个翻译单元中使用此头文件 - 每个翻译单元都有单独的定义 - 每个 TU 对象创建都会成功,但是在创建最终可执行文件时会引发错误。
在链接每个 TU 时(在创建可执行文件期间)是否创建了一个参考表来说明这些重复?
有关此主题的任何链接都会有所帮助。
提前感谢您的解释。