当前位置: 首页 > news >正文

网站 建设标准重庆市网站推广

网站 建设标准,重庆市网站推广,营销型网站技术特点,广东seo网站设计营销工具目录 1、单例模式#xff08;Singleton Pattern#xff09;的含义 2、单例模式的优缺点 #xff08;1#xff09;优点#xff1a; #xff08;2#xff09;缺点#xff1a; 3、C实现单例模式的示例#xff08;简单#xff09; 4、C实现单例模式的示例#xff…目录 1、单例模式Singleton Pattern的含义 2、单例模式的优缺点 1优点 2缺点 3、C实现单例模式的示例简单 4、C实现单例模式的示例实际项目中使用 1构造一个单例基类无线程安全 2构造一个单例基类二次保证线程安全 3目标类成为单例类继承这个单例类即可 4如何使用这个目标单例类 1、单例模式Singleton Pattern的含义 1单例模式是一种创建型设计模式它确保一个类只有一个实例并提供一个全局访问点来获取该实例。 2单例模式的主要目的是限制一个类的实例化次数以便在整个应用程序中共享该实例。它常用于需要全局访问某个对象的场景例如日志记录器、数据库连接池等。 2、单例模式的优缺点 1优点 1全局访问单例模式可以提供一个全局访问点使得其他对象可以方便地访问该实例。 2节省资源由于单例模式只创建一个实例可以节省系统资源特别是在需要频繁创建和销毁对象的场景下。 3数据共享单例模式可以实现数据的共享多个对象可以共享同一个实例避免了数据不一致的问题。 4延迟实例化单例模式可以延迟实例化即在第一次使用时才创建实例提高了系统的性能和效率。 2缺点 1难以扩展由于单例模式只允许存在一个实例因此扩展时可能会受到限制。 2违反单一职责原则单例模式将创建实例和业务逻辑耦合在一起违反了单一职责原则增加了代码的复杂性和维护成本。 3对象生命周期管理困难由于单例模式的实例在整个应用程序的生命周期中存在因此对其生命周期的管理可能较为困难。 4可能引发线程安全问题在多线程环境下如果没有正确处理并发访问的情况可能会引发线程安全问题。 因此在使用单例模式时需要权衡其优缺点并根据具体的业务需求和场景来决定是否使用。 3、C实现单例模式的示例简单 class Singleton { private:static Singleton* instance; // 静态成员变量保存唯一实例的指针// 将构造函数和拷贝构造函数声明为私有防止外部直接实例化和复制对象Singleton() {}Singleton(const Singleton other) {}public:static Singleton* getInstance(){if (instance nullptr){instance new Singleton();}return instance;}void someMethod() {// 单例类的其他方法} };Singleton* Singleton::instance nullptr; // 初始化静态成员变量int main() {Singleton* obj1 Singleton::getInstance(); // 获取单例实例obj1-someMethod(); // 调用单例对象的方法Singleton* obj2 Singleton::getInstance(); // 再次获取单例实例与obj1相同return 0; }在上述示例中通过将构造函数和拷贝构造函数声明为私有外部无法直接实例化和复制对象。通过静态成员变量instance保存唯一实例的指针并提供静态方法getInstance()来获取该实例。 4、C实现单例模式的示例实际项目中使用 1构造一个单例基类无线程安全 /* 单例类 */ #pragma once #include map #include string #include vector using namespace std;template typename T class SingleTon { public:static T* getInstance(){if (NULL m_pInstance){//m_singleCS.Lock();if (NULL m_pInstance){m_pInstance new T();}//m_singleCS.Unlock();}return m_pInstance;}protected:SingleTon(void){}virtual ~SingleTon(void){if (NULL ! m_pInstance){delete m_pInstance;m_pInstance NULL;}}static T* m_pInstance;private:SingleTon(const SingleTon);SingleTon operator (const SingleTon); };template typename T T* SingleTonT::m_pInstance NULL; 2构造一个单例基类二次保证线程安全 /** Description: 单例类工厂* Author: Ivy* Date: 2023-05-09 09:34:43* LastEditTime: 2023-02-24 11:28:29* LastEditors: XTZJ-2022OQEHLZ*/ #pragma once #include vector #include string #include iostream #include QMutexusing namespace std; template typename T class Singleton { public:static T* getInstance(){if (m_pInstance NULL){// 二次保证线程安全m_pMutexCreate.lock();if (m_pInstance NULL){m_pInstance new T();}m_pMutexCreate.unlock();}return m_pInstance;}// 尽量多的将单例共有的方法放到基类子类继承即可virtual void startWork() {} protected:Singleton() {}virtual ~Singleton(){if (m_pInstance ! NULL){delete [] m_pInstance;m_pInstance NULL;}}static T* m_pInstance;static QMutex m_pMutexCreate;QMutex m_mutex; private:Singleton(const Singleton);Singleton operator (const Singleton);public:void lock() { m_mutex.lock(); }void unLock() { m_mutex.unlock(); } };template typename T QMutex SingletonT::m_pMutexCreate;template typename T T* SingletonT::m_pInstance NULL;3目标类成为单例类继承这个单例类即可 /** Description: XXX 管理类*/ #pragma once #include Singleton.hclass testManager : public SingletontestManager {friend class SingletontestManager;//要声明友元类public:virtual ~testManager();void getData();void setData();private:testManager(); } 4如何使用这个目标单例类 // 实例演示包含该类的头文件 testManager::getInstance()-getData();
http://www.w-s-a.com/news/356097/

相关文章:

  • 建设银行企业网站访问不了wordpress搬到谷歌服务器
  • 网站建设与网站优化销售别墅庭院园林景观设计公司
  • 沈阳红方城网站建设专业的微网站哪家好
  • 医院网站asp东营信息发布平台
  • 网站全站建设开题报告范文南京本地网站
  • 网站漏洞扫描工具wampserver集成环境搭建了一个织梦cms网站
  • 如何在局域网上做网站宁波设计公司排行榜
  • 自己的电脑做网站服务器吗百度搜索风云榜总榜
  • 做化妆品的一些网站企业网站建设与营运计划书
  • 重庆速代网络科技seo整站优化服务教程
  • 成都比较好的装修设计公司seo3的空间构型
  • 开发商建设审批网站成都创意设计公司
  • 百度快照比网站上线时间早wordpress新建阅读量字段
  • 国家工程建设标准化协会网站网站开发工具有
  • 上海网站建设集中公关公司组织架构图
  • wordpress副标题的作用百度网站标题优化
  • 大连哪家公司做网站比较好wordpress 判断用户组
  • 网站空间1g多少钱东莞公司高端网站建设
  • 网站服务器出错是什么意思做餐饮酒店网站
  • 房地产网站建设策划方案网站建设教程简笔画
  • 3d室内设计软件wordpress本地优化加速版
  • 南京高新区规划建设局网站石家庄哪里做网站比较好
  • 免费培训课程网站优化的方式
  • 做网站要固定电话在家自己做网站
  • 招聘网站开发视频新手如何做网站维护
  • flash 网站欣赏国外做的比较好的网站有哪些
  • 推广一个网站需要什么官网首页设计
  • 淘宝建设网站的理由企业官网建设哪家好
  • 青岛网站推wordpress主题切换
  • 天元建设集团有限公司资质郑州网站seo推广