欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

当心在Lib中定义非const全局变量

发布时间:2024/4/11 编程问答 49 豆豆
生活随笔 收集整理的这篇文章主要介绍了 当心在Lib中定义非const全局变量 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

当心在Lib中定义非const全局变量

Posted on 2011-08-15 16:33 单鱼游弋 阅读(306) 评论(0) 编辑 收藏

一般我们在全局作用域定义全局变量来进行模块间(函数之间、类之间)的数据交互。可是在Lib里干这种事情得当心了,如果这个Lib被两个或两个以上的DLL(包括EXE)链接,并且他们都调用了Lib中同一个全局变量,那么灾难很可能发生了。因为对于DLL而言,链接Lib只是得到了Lib的一份拷贝,也就是说,每个DLL中得到的Lib的拷贝都是独立的,相互之间无联系的。因此,这个“同一个”全局变量,其实在每个DLL中都已经单独存在了,已经不是唯一的“同一个”,而是每个DLL各有一个。所以,这些DLL是不能通过Lib中的全局变量进行数据交互的,他们各不相干。

总结

以上是生活随笔为你收集整理的当心在Lib中定义非const全局变量的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。