C ++:obj文件的关联顺序是否重要?

时间:2015-08-07 11:10:27

标签: c++ visual-studio linker

采用声明和定义简单函数的头文件和实现文件的经典示例,以及包含调用该函数的main()的第二个实现文件,编译器将生成两个目标文件。

1)在链接这些文件以生成可执行文件时,订单是否重要?

This question有一个答案表明订单无关紧要。

This site明确同意,举例说明使用GCC。

2)如果订单确实重要,那么像Visual Studio这样的IDE如何确定适当的链接顺序?

我在使用gcc / g ++构建时遇到未解决的符号错误,需要改变makefile中目标文件的顺序来解决这个问题。但是,我可能错误地记录了链接文件。

1 个答案:

答案 0 :(得分:2)

对象文件的链接顺序无关紧要。图书馆订单确实很重要,这是开发商的责任。

说实话,接头很古老。现代语言没有链接器,但GCC特别不遗余力地与过去保持兼容。