学习笔记——单例模式Singleton

单例模式,很容易理解,就它一个。

比如网络请求服务类WebReq。它自己生成请求线程,并管理请求数据的返回,所以我们使用它进行网络请求时,不用每次都new一个,只需要使用一个实例就行了。WebReq实现的就是单例模式。

C++示例

Singleton.h

 1 #pragma once
 2 class CSingleton
 3 {
 4 public:
 5     static CSingleton* GetInstance();
 6     ~CSingleton(void);
 7 public:
 8     void Operate();
 9 private:
10     CSingleton();
11 private:
12     static CSingleton* _instance;
13 };

Singleton.cpp

 1 #include "Singleton.h"
 2 #include <iostream>
 3 
 4 CSingleton*  CSingleton::_instance = new CSingleton();
 5 
 6 CSingleton::CSingleton(void)
 7 {
 8 }
 9 
10 
11 CSingleton::~CSingleton(void)
12 {
13 }
14 
15 void CSingleton::Operate()
16 {
17     std::cout<<"hi"<<std::endl;
18 }
19 
20 CSingleton* CSingleton::GetInstance()
21 {
22     return _instance;
23 }

main.cpp

1 #include "Singleton.h"
2 #include <iostream>
3 
4 int main()
5 {
6     CSingleton* pSingleton = CSingleton::GetInstance();
7     pSingleton->Operate();
8     return 0;
9 }

 

 

 

posted on 2013-11-25 17:12  阿呜的边城  阅读(200)  评论(0编辑  收藏  举报

导航