单例模式的问题
来源:互联网 发布:日本 唐吉诃德 淘宝 编辑:程序博客网 时间:2024/05/17 00:15
上面的方法在调试中没有发现进入CGarbo 的析构函数里释放。
改用以下方法进行释放
/////////////////////////////////////////////////////////////// h ///////////////////////////
#pragma once
class GPIB_API
{
public:
static GPIB_API* GetInstance()
{
if( NULL == pGPIB)
{
pGPIB = new GPIB_API();
}
return pGPIB;
}
private:
GPIB_API(void);
virtual ~GPIB_API(void);
static GPIB_API* pGPIB;
friend class GPIB_Dustman;
};
/////////////////////////////////////////////////////////////// cpp ///////////////////////////
class GPIB_Dustman
{
public:
GPIB_Dustman()
{
int k = 0;
}
~GPIB_Dustman()
{
GPIB_API* pGPIB = GPIB_API::GetInstance();
if( NULL != pGPIB)
{
delete GPIB_API::pGPIB;
}
}
};
static GPIB_Dustman gpibDustman;
GPIB_API* GPIB_API::pGPIB = NULL;
GPIB_API::GPIB_API(void)
{
}
GPIB_API::~GPIB_API(void)
{
}
改用以下方法进行释放
/////////////////////////////////////////////////////////////// h ///////////////////////////
#pragma once
class GPIB_API
{
public:
static GPIB_API* GetInstance()
{
if( NULL == pGPIB)
{
pGPIB = new GPIB_API();
}
return pGPIB;
}
private:
GPIB_API(void);
virtual ~GPIB_API(void);
static GPIB_API* pGPIB;
friend class GPIB_Dustman;
};
/////////////////////////////////////////////////////////////// cpp ///////////////////////////
class GPIB_Dustman
{
public:
GPIB_Dustman()
{
int k = 0;
}
~GPIB_Dustman()
{
GPIB_API* pGPIB = GPIB_API::GetInstance();
if( NULL != pGPIB)
{
delete GPIB_API::pGPIB;
}
}
};
static GPIB_Dustman gpibDustman;
GPIB_API* GPIB_API::pGPIB = NULL;
GPIB_API::GPIB_API(void)
{
}
GPIB_API::~GPIB_API(void)
{
}
- 单例模式的问题
- 单例设计模式的相关问题
- 单例模式---定时器的问题
- Python单例模式的问题
- Android 单例模式的问题
- 单例模式的反射相关问题
- 单例模式的DCL问题
- 单例模式的双重检测问题
- 单例模式解决多线程的问题
- Java单例模式及创建单例模式的多线程问题 volatile synchronized 关键字
- 【Java 单例模式】Java 单例模式在多线程环境中可能存在的问题
- 带参数的单例模式遇到的问题
- Java上的设计模式的单例问题
- 单例模式的懒汉式在多线程的问题
- 自己遇到的一个单例模式的问题记录
- 单例模式,几点容易被忽视的问题
- C++单例模式下,静态变量的问题。
- 单例模式的构造和析构问题
- Webkit和Trident内核的黑白网页测试
- ssh的防御办法
- Content is not allowed in prolog
- 如何制作安装程序
- ASP.NET中的缓存使用(1)
- 单例模式的问题
- 现在的歌名越来越怪了
- Top 10 Mobile Trends of 2010, Part 1: Design & Development
- Hping3 ——ping扫描的好工具
- windows 下mysql
- CEGUI中的RadioButton简单用法
- 利用正则表达式统计单词个数
- 关于window.opener的用法 【转】
- 在 Hyper-V 上配置 Ubuntu 虚机的网络