单例模式

class QDH_MYSQL
{
public:
    static QDH_MYSQL* instance()
    {
        if (_instance == NULL)
            _instance = new QDH_MYSQL();
        return _instance;
    }
    static void destroy()
    {
        if (_instance)
        {
            delete _instance;
            _instance = NULL;
        }
    }
    int funcA(int i);
private:
    QDH_MYSQL();
    ~QDH_MYSQL();
    static QDH_MYSQL* _instance;
};

// .cpp中必须初始化,否则会出现“error LNK2001: 无法解析的外部符号”,因为私有静态成员变量在使用前必须初始化
QDH_MYSQL* QDH_MYSQL::_instance = NULL;


//使用方式
int iii = QDH_MYSQL::instance()->funcA(123);

 

posted @ 2017-03-01 11:42  酷熊  阅读(140)  评论(0编辑  收藏  举报