C++全局变量或类静态成员变量问题

1. 工程中包含静态库A,动态库B,可执行程序C。C依赖于A和B,而B依赖于A。在A中定义有全局变量X(或类的静态成员变量),则在动态库B中访问的X,与可执行程序C中访问的X是同一个变量还是两个不同的变量?
答案:是两个不同的变量。

2. 工程中包含动态库A,动态库B,可执行程序C。C依赖于A和B,而B依赖于A。在A中定义有全局变量X(或类的静态成员变量),则在动态库B中访问的X,与可执行程序C中访问的X是同一个变量还是两个不同的变量?(注:所有库都在同一进程中使用)
答案:是共享同一个变量。即:在A是动态库的这种情况下,B和C访问到的X是同一变量。

posted @ 2014-10-26 11:52  rain_2012_qf  阅读(436)  评论(0)    收藏  举报