Cocos2dX设计模式之单例模式
2015-08-04 20:57
363 查看
//单例类的优缺点不再累述,下面直接是一个单例类的实现
//单例模式
//.h
#include <iostream>
using namespace std;
class MyData
{
private:
MyData();
public:
static MyData *getInstance();
static void desInstance();
public:
void setLevel(int l);
int getLevel();
private:
int _level;
};
//.cpp
#include "Data.h"
static MyData *_instance = nullptr;
MyData *MyData::getInstance()
{
if (!_instance) {
_instance = new MyData();
}
return _instance;
}
void MyData::desInstance()
{
//对data的数据进行文件保存
delete _instance;
_instance = nullptr;
}
MyData::MyData()
{
_level = 0;
_score = 0;
_bombnumber = 0;
//从文件读取
}
void MyData::setLevel(int l)
{
_level = l;
}
int MyData::getLevel()
{
return _level;
}
//对单例对象的使用
MyData *data = MyData::getInstance();
//单例模式
//.h
#include <iostream>
using namespace std;
class MyData
{
private:
MyData();
public:
static MyData *getInstance();
static void desInstance();
public:
void setLevel(int l);
int getLevel();
private:
int _level;
};
//.cpp
#include "Data.h"
static MyData *_instance = nullptr;
MyData *MyData::getInstance()
{
if (!_instance) {
_instance = new MyData();
}
return _instance;
}
void MyData::desInstance()
{
//对data的数据进行文件保存
delete _instance;
_instance = nullptr;
}
MyData::MyData()
{
_level = 0;
_score = 0;
_bombnumber = 0;
//从文件读取
}
void MyData::setLevel(int l)
{
_level = l;
}
int MyData::getLevel()
{
return _level;
}
//对单例对象的使用
MyData *data = MyData::getInstance();
相关文章推荐
- php设计模式之单例模式实例分析
- C#设计模式之单例模式实例讲解
- JS模式之单例模式基本用法
- 深入理解JavaScript系列(25):设计模式之单例模式详解
- Java单例模式、饥饿模式代码实例
- Android源码学习之单例模式应用及优点介绍
- C++设计模式之单例模式
- C#窗口实现单例模式的方法
- Java线程安全中的单例模式
- PHP单例模式详细介绍
- PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
- php实现singleton()单例模式实例
- PHP中数据库单例模式的实现代码分享
- php利用单例模式实现日志处理类库
- 浅析php单例模式
- php单例模式实现方法分析
- javascript单例模式的简单实现方法
- js单例模式的两种方案
- php单例模式示例分享
- java单例模式使用详解