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

阿克苏地区网站建设_网站建设公司_测试工程师_seo优化

html5手机网站调用微信分享,下载导航到手机上安装,旅游类作业网站,小白怎么制作微信小程序文章目录 一.单例模式二.单例模式的两种实现方式饿汉模式懒汉模式 一.单例模式 一个类只能创建一个对象,这样的类的设计模式就称为单例模式,该模式保证系统中该类只能有一个实例(并且父子进程共享),一个很典型的单例类就是CSTL的内存池C单例模式的基本设计思路: 私有化构造函数… 文章目录 一.单例模式二.单例模式的两种实现方式饿汉模式懒汉模式 一.单例模式 一个类只能创建一个对象,这样的类的设计模式就称为单例模式,该模式保证系统中该类只能有一个实例(并且父子进程共享),一个很典型的单例类就是CSTL的内存池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.ihoyoo.com/news/135282.html

相关文章:

  • 广州网站建设V芯ee8888e韩国和乌拉圭谁出线
  • 河南省住房和城乡建设厅网站查证江阴网络推广公司
  • 知乎 php网站开发书籍安平有做网站推广的吗
  • 助孕网站优化推广做家教什么网站比较好
  • 购物网站建设实训心得体会商家联盟营销方案
  • 做网站切图是什么意思龙海建设局网站
  • 会员注册网站怎么做如何访问服务器上的网站
  • 惠州酒店网站建设枸杞网站怎么做
  • 白酒 网站模板网站开发的平台
  • 杭州微网站网站外部链接建设分析
  • 温州市城市建设档案馆网站郑州网站建设哪家强
  • 网站开发 不好 怎么说网站排名优化软件哪家好
  • 上海单位网站建设网页一键生成小程序
  • 江西省住房与城乡建设厅网站手机页面设计软件
  • 商城网站发展计划网络服务合同
  • 阿里云快速备份网站wordpress空间多大合适
  • 网站展示型推广iis网站访问用户
  • 静态旅游网站哪个网站能接施工图来做
  • 怎么使用腾讯云做网站wordpress循环分类子分类与文章
  • 网站建设和维护哪个好线上设计师是什么
  • 公众号的微网站开发永久免费个人网页申请
  • 网站开发会计处理北湖区网站建设哪家好
  • 建设网站内容的策划书河北网站建设方案
  • 淮滨网站制作注册公司流程和费用时间
  • 学校门户网站建设报告老闵行的房子值得买吗
  • 合理规划网站苏州优化平台
  • 怎么做一个电商网站吗微信营销软件平台
  • 建站程序排名昆山建设信息网站
  • 安徽美丽乡村建设网站怎样做网站外部样式
  • 360网站做二维码成都网络营销公司排名收费标准