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

湖南网站建设哪家专业郑州seo实战培训

湖南网站建设哪家专业,郑州seo实战培训,博客 选择 WordPress,wordpress怎么做伪静态文章目录 一.单例模式二.单例模式的两种实现方式饿汉模式懒汉模式 一.单例模式 一个类只能创建一个对象,这样的类的设计模式就称为单例模式,该模式保证系统中该类只能有一个实例(并且父子进程共享),一个很典型的单例类就是CSTL的内存池C单例模式的基本设计思路: 私有化构造函数…

在这里插入图片描述

文章目录

  • 一.单例模式
  • 二.单例模式的两种实现方式
    • 饿汉模式
    • 懒汉模式

一.单例模式

  • 一个类只能创建一个对象,这样的类的设计模式就称为单例模式,该模式保证系统中该类只能有一个实例(并且父子进程共享),一个很典型的单例类就是C++STL的内存池
  • C++单例模式的基本设计思路:
    • 私有化构造函数,删除默认的拷贝构造函数赋值运算符重载防止对象被直接创建和拷贝
    • 单例对象的内存资源可以交给操作系统来释放,也可以自定义析构函数来完成特殊操作

二.单例模式的两种实现方式

饿汉模式

  • 饿汉单例类在程序进入主函数之前就创建出唯一的实例
//饿汉单例模式
class HungerSingleton
{
public://定义一个可以访问单例对象的静态接口static HungerSingleton* Getinstance(){return &singleObj;}
private://构造函数私有化,防止对象被直接创建HungerSingleton() { cout << "单例对象创建" << endl; }//删除拷贝接口,防止对象被拷贝HungerSingleton(const HungerSingleton& single) = delete;HungerSingleton& operator=(const HungerSingleton& single) = delete;private://定义静态区的HungerSingleton成员static HungerSingleton singleObj;//也可以定义成指针,初始化时在堆上创建//static HungerSingleton* singleObj;
};
//初始化类的静态成员
HungerSingleton HungerSingleton::singleObj;
//初始化时在堆上创建
//HungerSingleton * HungerSingleton::singleObj = new HungerSingleton;
  • HungerSingleton静态成员变量自身类型的对象(或指针),类的静态成员变量在进入主函数之前就完成初始化,由于构造函数被私有化,因此在程序运行过程中无法再创建该类的对象
  • 饿汉单例模式的优势:
    • 由于子进程只能在主函数中被创建,因此饿汉单例类不存在线程安全问题,无需与其他线程的类竞争系统资源,在多线程高并发环境下能够较为高效地执行任务
  • 饿汉单例模式的劣势:
    • 如果一个程序中有多种饿汉单例类,我们无法控制它们的初始化顺序
    • 饿汉单例类会拖慢程序的启动速度,而且即便用不到该类也会创建一个实例,可能造成内存浪费

懒汉模式

  • 懒汉单例类在程序进入主函数之后由后续代码决定是否创建实例
//懒汉单例模式
class LazySingleton
{
public://定义一个可以访问单例对象的静态接口static LazySingleton* Getinstance(){//若singleObj为空指针则创建单例对象if (singleObj == nullptr){singleObj = new LazySingleton;}return singleObj;}
private://构造函数私有化,防止对象被创建LazySingleton() { cout << "单例对象创建" << endl; }//删除拷贝接口,防止对象被拷贝LazySingleton(const LazySingleton& single) = delete;LazySingleton& operator=(const LazySingleton& single) = delete;private://定义成静态成员指针,初始化时在堆上创建static LazySingleton* singleObj;
};
//初始化时设置成空指针
LazySingleton * LazySingleton::singleObj = nullptr;
  • LazySingleton类在第一次调用Getinstance()成员接口时才会创建实例
  • 懒汉单例模式的优势:
    • 可以控制多种懒汉单例类对象的初始化顺序,并且需要用到的时候才创建,避免了内存浪费
  • 懒汉单例模式的劣势:
    • 在多线程环境中存在线程安全问题,需要加锁
      在这里插入图片描述
http://www.zhongyajixie.com/news/28832.html

相关文章:

  • 旅游网站建设成本核算没被屏蔽的国外新闻网站
  • 怎么制作一个国外网站友链是什么
  • 如何服务器ip地址做网站防控措施持续优化
  • 建筑设计经典案例分析如何seo推广
  • app会替代网站吗网络课程
  • 建筑工程类网站优化王
  • 深圳做公司网站推广的关键词全网搜索
  • 用四字成语做网站域名好吗企业网络推广最简单方法
  • 谭八爷网站开发南阳网站优化公司
  • 网站建设哪家好全网营销一站式推广
  • 好的做外贸的网站有哪些网络媒体
  • 镇江网页设计师招聘手机端seo
  • 新闻网站如何做推广百度sem竞价推广
  • 香港域名注册网站商务软文写作
  • 做网站的三个软件seo营销方案
  • 怎么注册个人的网站重庆百度整站优化
  • 美食网站开发前期准备长尾词挖掘
  • 做企业网站价格网络推广具体内容
  • 专业北京网站建设邳州网站开发
  • 襄阳企业网站建设百度搜索关键词排名优化技术
  • 国税网站上如何做股权变更怎么写软文
  • 滨州制作网站谷歌平台推广外贸
  • 织梦做的网站被黑了沈阳黄页88企业名录
  • 什么是一学一做视频网站竞价托管怎么做
  • 求好的设计网站东莞网络优化哪家好
  • 专业国外网站建设新东方雅思培训机构官网
  • 国外网站做任务赚钱的seo软件定制
  • html做分模块的网站现在做推广的新渠道有哪些
  • 金融行业网站模板安徽建站
  • 建设企业网站的需要多长时间seo优化托管