【发布时间】:2013-06-01 09:50:17
【问题描述】:
我正在阅读,我在下面的示例中有疑问。
单身
Class MazeFactory{
public:
static MazeFactory* Instance();
protected:
MazeFactory();
private:
static MazeFactory* _instance;
};
MazeFactory* MazeFactory::_instance = 0;
MazeFactory* MazeFactory::Instance(){
if(_instance == 0){
_instance = new MazeFactory;
}
return _instance;
}
对于''MazeFactory* MazeFactory::_instance = 0;',我应该把它放在哪里?在这个类的定义?还有其他选择来初始化它吗?看的时候只知道设计是这样的,但不明白为什么要这样设计。
【问题讨论】: