解析的顺序是否影响导入表中的函数顺序 (即遇到的第一个函数是导入表中的第一个?)还是其他的东西?
谢谢!
EDIT
我使用的是Visual Studio,但是关于其他编译器的答案也会很棒!
答案 0 :(得分:2)
编译器与它无关,链接器创建该表。没有预设顺序,只是链接器在目标文件中遇到导出的顺序。您可以使用.def文件使其可预测。
没有真正的意义,表中导出的位置不会影响任何事情。表条目始终按顺序或名称定位,从不定位。 GetProcAddress()微优化是您在实践中永远不会看到的优化,磁盘I / O开销将其吹走。
答案 1 :(得分:1)
<强>取决于即可。动态链接以及DLL和IAT不是标准C ++的一部分,而是许多编译器实现的扩展。简而言之, if 和 他们这样做是编译器特定的。也许你正在使用的编译器在文档中有关于它的东西。