dll:静态链接与隐式链接,一样吗? [英] dlls: static vs implicit linking, same thing?
问题描述
关于Dll链接,静态链接和隐式链接是同一件事吗?
Concerning Dll linkage, are static and implicit linking the same thing?
我了解隐式链接和显式链接之间的区别,并且我认为static是隐式链接的同义词,但不确定。
I understand the difference between implicit and explicit linking, and I think static is synonymous with implicit, but am not certain.
如果它们确实不同,它们之间有什么区别,我该如何指定我想要的那个?
if they are indeed different, what is the difference between them, and how do I specify which one I want?
此链接使用术语隐式来表示我所听到的称为静态的内容。
this link from msft uses the term "implicit" for what I've heard referred to as "static". Is it perhaps a msft-specific thing?
推荐答案
是的,在Windows平台上,当讨论链接到DLL时,术语静态链接和隐式链接是同义词。
Yes, in Windows-land, when discussing linking to DLLs, the terms static linking and implicit linking are synonymous.
隐式链接有时称为静态负载或负载时动态链接。显式链接有时称为动态负载或运行时动态链接。
Implicit linking is sometimes referred to as static load or load-time dynamic linking. Explicit linking is sometimes referred to as dynamic load or run-time dynamic linking.
在过去的日子里,Microsoft首选术语隐式和显式链接。如今,他们似乎更喜欢 加载时间和运行时 。一样,当人们谈论链接到DLL时,术语 static 表示 implicit 和 load-time 的代名词。
In days gone by Microsoft preferred the terms implicit and explicit linking. Nowadays they seem to prefer the terms load-time and run-time, respectively. All the same, when people talk about linking to DLLs, the term static means is synonymous with implicit and load-time.
出于以下几个原因,我尝试避免针对DLL链接使用 static :
I for one try to avoid using static in relation to DLL linking for a couple of reasons:
- 链接到静态库很容易混淆。
- 一个人可以静态链接到动态对象的想法让人感到矛盾。 / li>
- 静态一词已经用来表示谁知道C和C ++语言中有多少不同的事物,我宁愿不要重载该术语!
这篇关于dll:静态链接与隐式链接,一样吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!