DLL libarry中的相同静态和全局变量

时间:2019-01-24 07:39:22

标签: c++ dll

我的问题是这里有三个库,两个动态库(DLL A和DLL B)和一个静态库C。在C中定义了一些全局变量和静态变量,并且两个DLL都与静态库C链接。问题是,当A和B都由一个进程加载时,这些变量发生了什么?每个DLL将具有其自己的实例,或者它们共享相同的实例。

1 个答案:

答案 0 :(得分:0)

除非两个DLL都导出该变量,否则不会发生任何特殊情况-两个DLL都有自己的内部副本。如果两个都导出变量,它们仍然具有自己的副本,但是使用两个DLL的程序都需要选择。

该问题被标记为C ++,但这实际上是Win32的答案。