<分区>
它确实存在于 C/C++ 中,但我不确定任何其他编程语言。我只是好奇链接器是否存在于所有编译的编程语言中,或者是否每个语言创建者都决定如何编译代码?
对于 Benj:我指的是本地语言,而不是像 CLR 这样的托管代码。
<分区>
它确实存在于 C/C++ 中,但我不确定任何其他编程语言。我只是好奇链接器是否存在于所有编译的编程语言中,或者是否每个语言创建者都决定如何编译代码?
对于 Benj:我指的是本地语言,而不是像 CLR 这样的托管代码。
最佳答案
严格来说,链接器不是语言的一部分,而是语言实现的一部分。 (此外,语言本身并不是“编译”或“解释”的——这些也是实现的两个特征)。
链接器允许语言实现者实现“单独编译”。单独编译是一个非常重要的特性,它允许程序的单独部分的物理解耦和允许部分构建(这可以减少总构建时间)。出于这个原因,大多数输出 native 二进制文件的语言的实现都将使用链接器作为其实现的一部分。
也就是说,链接器不是语言编译实现的必需部分,并且可以想象某些语言实现不会使用链接器(考虑一个学生项目来编写一个语言并实现它——如果这种语言不希望用于任何大型程序,那么花在实现/集成链接器上的时间可能被认为是不值得的。
关于c++ - 链接器是否存在于所有编译的编程语言中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10397906/