我有一个包含 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/