Systems Design

单例模式的C++实现与测试

2017-07-02  本文已影响47人  wuzhiguo

Why 为什么需要单例模式?

高效的资源管理

What 单例模式实现了什么功能?

How 如何设计单例模式?

单例模式的一个实现及测试

#include <iostream>

class Singleton{
private:
    Singleton(){}
    static Singleton *m_pInstance;
public:
    static Singleton *
    GetInstance(){
        if(m_pInstance == NULL){
            m_pInstance = new Singleton();
        }
        return m_pInstance;
    }
    
};


using std::cout;
using std::endl;

Singleton *Singleton::m_pInstance = NULL;

int
main(){
    Singleton *p1 = Singleton::GetInstance();
    Singleton *p2 = Singleton::GetInstance();
    if(p1 == p2){
        cout << "p1与p2是同一个实例 << endl;
    }
    else{
        cout << "p1与p2不是同一个实例" << endl;
    }
    return 0;
}

How 单例模式如何运用到项目中?

muduo库可用于多线程环境下的日志库

上一篇 下一篇

猜你喜欢

热点阅读