参考
一、使用场景
在业务逻辑中唯一的对象建议使用单例模式,放置逻辑上的唯一对象被创建多次,比如一个进程中的配置管理对象,一个进程中使用一个管理对象,为了实现该对象不被多次创建,可以使用单例模式。
二、通用实现方法
懒汉式:对象在真正使用的地方再进行创建
CConfigManager* CConfigManager::instance()
{
g_ConfigManagerMtx.lock();
if (nullptr == m_pInstance)
{
m_pInstance = new CConfigManager();
if (nullptr != m_pInstance)
{
g_ConfigManagerMtx.unlock();
return m_pInstance;
}
else
{
CRRC_ERROR("nullptr == m_pInstance");
g_ConfigManagerMtx.unlock();
return nullptr;
}
}
else
{
g_ConfigManagerMtx.unlock();
return m_pInstance;
}
}
恶汉式:对象在程序运行时立即初始化
本文详细介绍了C++中的单例模式,包括其概念、作用以及两种常见的实现方式:懒汉式和饿汉式。懒汉式确保了对象在首次使用时才初始化,而饿汉式则在程序启动时立即初始化。文中还给出了懒汉式的C++代码实现,用于演示如何保证线程安全地获取单例实例。单例模式常用于需要全局唯一对象的场景,如配置管理。
https://blog.youkuaiyun.com/qq_20817327/article/details/108720839

被折叠的 条评论
为什么被折叠?



