求问下边这段程序是怎么个逻辑,要表达什么意思?
using namespace std;
class global {
public:
static global* a();
protected:
static global* _a;
};
global*global::_a = 0;
int main() {
global::a();
return 0;
}
global *global::a(){
if (!_a)
_a = new global();
return _a;
}
像实现单键模式(singleton pattern),把全局变量放在单键类里。但是有一点不对,就是需要封闭global的构造函数,防止外部new