vc中静态成员函数中调用非静态成员变量?解决思路

vc中静态成员函数中调用非静态成员变量?
今天看代码,发现一个问题,现在拿出来让大家给我解释下 

问题如下 :
定义了一个类Device ,类中有静态成员函数Detect,非静态成员变量b,当然实际当中还有其它的变量。
然后代码中在stdafx.h 中定义了类Device 的对象 g_Device, 最后在静态成员函数Detect的
实现中这样调用g_Device.b 

我个人认为这样写是不对的,但是编译也没报错,还能运行。有没人解释一下

------解决方案--------------------
对的,在类静态成员函数里面调用全局变量,怎么会不可以呢?
------解决方案--------------------
http://blog.****.net/lekonpeng/archive/2009/06/22/4288170.aspx
------解决方案--------------------
g_Device 需要 new 

new后,对象就产生了 

这样 g_Device.b 的表达很正确。
------解决方案--------------------
定义对象g_Device的时候,成员变量b已经初始化了,可以用