#include <iostream>

class CSingleton /* 懒汉式 */
{  
public:
    static CSingleton *GetInstance()
    {       
        if(m_pInstance == NULL) //判断是否第一次调用
        {
        m_pInstance = new CSingleton();
}        
        return m_pInstance;
    }
    void RelaseInstance()
    {
        delete this;
    }
    void HelloWorld(void)
    {
    std::cout<<"Hello world!"<<std::endl;
}
private:
    CSingleton() //构造函数是私有的
    {
   
    }
    CSingleton(const CSingleton& that)//拷贝构造函数也应是私有的
    {
     
    }
    ~CSingleton()
    {
        m_pInstance = NULL;
    }
static CSingleton *m_pInstance;    
};

/*
1.一定要放在类定义后面初始化,放到前面就会报错。
2.一定要对这个静态类成员变量初始化,否则编译时报引用了未定义成员的错误。 
*/
CSingleton* CSingleton::m_pInstance = 0;

int main(int argc, char** argv) 
{
CSingleton *m_pInstance1 = CSingleton::GetInstance();
m_pInstance1->HelloWorld();
return 0;
}

单列模式(懒汉)测试代码相关推荐

  1. RabbitMq的工作模式 介绍+测试代码,以及三种Exchange模式介绍.

    RabbitMq的提供了六种模式分别是:简单模式,工作模式,发布\订阅模式,路由模式,通配符模式,RPC远程调用模式 下面将详细介绍常用的前五种模式,附上测试代码. 公共的代码---连接工具类: pu ...

  2. RabbitMQ七种工作模式实现测试代码

    所有工作模式依赖都相同 <dependencies><!--RabbitMQ的客户端依赖--><dependency><groupId>com.rabb ...

  3. 光流法测试代码_高效的企业测试-工作流和代码质量(4/6)

    光流法测试代码 本文的这一部分将讨论在开发过程中拥有有效工作流程的影响,以及适当的测试代码质量如何使我们能够创建可维护的测试,尤其是对于复杂项目. 开发工作流程和管道 编程是一项流程活动,我们开发人员 ...

  4. fusion构建器代码语法_构建器模式:适用于代码,适用于测试

    fusion构建器代码语法 我发现构建器设计模式偶尔在代码中有用,但在测试中经常有用. 本文简要概述了该模式,然后介绍了在测试中使用该模式的一个有效示例. 请参阅github中的代码. 生成器模式的背 ...

  5. 构建器模式:适用于代码,适用于测试

    我发现生成器设计模式偶尔在代码中有用,但在测试中经常有用. 本文简要概述了该模式,然后介绍了在测试中使用该模式的一个有效示例. 请参阅github中的代码. 生成器模式的背景 根据GoF的书 ,构建器 ...

  6. Windows/Linux TCP Socket网络编程简介及测试代码

    典型的网络应用是由一对程序(即客户程序和服务器程序)组成的,它们位于两个不同的端系统中.当运行这两个程序时,创建了一个客户进程和一个服务器进程,同时它们通过从套接字(socket)读出和写入数据在彼此 ...

  7. 提高C++性能的编程技术笔记:设计优化/可扩展性/系统体系结构相关+测试代码

    1. 设计优化 我们可以粗略地将性能优化分为两种类型:编码优化和设计优化.编码优化定义为不需要完整理解要解决的问题或者应用程序的执行流程就能实施的优化.通过定义看出,编码优化用于局部代码,同时该过程不 ...

  8. 提高C++性能的编程技术笔记:标准模板库+测试代码

    标准模板库(Standard Template Library, STL)是容器和通用算法的强效组合. 渐近复杂度:算法的渐近复杂度是对算法性能的近似估计.它是算法集到特定性能标准集的映射.如果需要对 ...

  9. sm4算法(附源码、测试代码)

    from:http://blog.csdn.net/mao0514/article/details/52930944 SM4是我们自己国家的一个分组密码算法,是国家密码管理局于2012年发布的.网址戳 ...

  10. python测试代码怎么写_Python 单元测试

    Test your software, or your users will. "Test ruthlessly. Don't make your users find bugs for y ...

最新文章

  1. Oracle已从2019年1月起收取Java费用
  2. 把云计算从云端带进国内的虚拟化软件
  3. mysql的复杂查询_mysql复杂查询
  4. ps背景不变换字_PS教程:复杂背景中,如何利用通道轻松抠出发丝?
  5. echart雷达图文字挤在一起_【数据可视化·图表篇】雷达图
  6. Multisim调出时钟设置方波信号
  7. 嵌套查询和连接查询的效率_LeetCode 查找:groupby+having/嵌套查询/连接
  8. 计算机共享地址怎么设置到桌面,局域网共享在哪里设置
  9. 2022年Java秋招面试必看的 | 微服务面试题
  10. Xcode8 官方下载地址
  11. 营销单页程序php,Z-blogPHP单页网站模板|产品营销单页|单品推广
  12. MATLAB多元线性拟合——03
  13. 语音合成芯片——SYN6658
  14. 泽勒的一致性,计算一周的星期几
  15. 码农架构 | Spring Boot 实现通用 Auth 认证的 4 种方式
  16. Hadoop2.7.2 分布式集群搭建(CentOS 7)
  17. 医院私有云存储的规划、配置、调优工程实例
  18. ps切图(8)——精准切图
  19. Java关于大批量数据处理
  20. 微型计算机最少拍设计实验,实验七 最少拍控制系统(6页)-原创力文档

热门文章

  1. [Python]网络爬虫(二):利用urllib2通过指定的URL抓取网页内容
  2. 10张图带你深入理解Docker容器和镜像
  3. JPA_@Table 注解详解
  4. java 克隆的作用_关于java中克隆的学习(一)
  5. dvwa如何打开_一篇文章让你搭建自己的Web安全测试平台(Dvwa)
  6. java 线程 状态 图_Java线程中的生命周期和状态控制图文详解
  7. php和mysql的版本区别_MySQL各个版本区别_MySQL
  8. 一张图读懂八大全国一体化算力网络国家枢纽节点一览
  9. java opengl_java基于OpenGL ES实现渲染实例
  10. eviews如何处理缺失数据填补_python数据预处理之异常值、缺失值处理方法