c++ - 在 C++ DLL 中使用全局变量

标签 c++ windows dll

我有一个包含 3 个类的 C++ DLL。我在我的“stdafx”头文件中添加了一个静态 bool 变量(因为我所有的类都包含它)并尝试使用它。虽然我所有的类都看到了我的变量,但它们似乎都有不同的实例。如果我在一个类中将变量设置为 true,那么我会注意到它在另一个类中为 false。有什么方法可以创建一个只能在 DLL 中跨所有类使用的变量?

最佳答案

好吧,您将其标记为 static,所以这就是发生的情况。相反,在 header 中将其标记为 extern 并在 one TU 中定义它。

并且不要修改stdafx;这不是你的。使用您自己的共享 header 。

关于c++ - 在 C++ DLL 中使用全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8748077/

相关文章:

c++ - 虽然循环不退出,即使它应该

java - 使用JNI调用给定DLL文件中定义的函数

c++ - C++ 中的多元正态密度函数

windows - Windows XP 上 for/f 命令的问题

c++ - GPU 去隔行扫描

windows - 在 Windows 上使用 Mercurial 跟踪硬链接(hard link)或符号链接(symbolic link)

c - Win32 - 在纯 C 中分离多个加载的 DLL 实例中的数据

java - 如何在 Java 代码中使用从 .dll 中使用和返回对象的函数?

c++ - 使用 C++ 的二维数组

c++ - 在 Windows 7 上捕获单个应用程序的音频