`
mylove2060
  • 浏览: 338713 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

C++ Singleton模式

阅读更多
//Singleton.h
#include <iostream>

class Singleton
{
public:
	Singleton();
	static Singleton *GetInstance();
	void DisplayCount();
	void AddCount(int in_count);
private:
	int m_count;	
};




//Singleton.cpp
#include "Singleton.h"

Singleton::Singleton()
{
	m_count = 0;
}

Singleton *Singleton::GetInstance()
{
	static Singleton obj;
	return &obj;
}

void Singleton::DisplayCount()
{
	std::cout<<"Count:"<<m_count<<std::endl;
}

void Singleton::AddCount(int in_count)
{
	m_count +=in_count;
}





#include <iostream> 
#include "Singleton.h"



int main() 
{ 
	Singleton::GetInstance()->DisplayCount(); //0
	Singleton::GetInstance()->AddCount(2);    //0+2
	Singleton::GetInstance()->DisplayCount();  //2 
	Singleton::GetInstance()->AddCount(5);     //2+5
	Singleton::GetInstance()->DisplayCount();  //7
	Singleton::GetInstance()->AddCount(10);     //7+10
	Singleton::GetInstance()->DisplayCount();  //17
} 

分享到:
评论

相关推荐

    C++完美实现Singleton模式

    ### C++中实现Singleton模式的关键知识点 #### 一、Singleton模式简介 Singleton模式是一种常用的软件设计模式,旨在确保一个类只有一个实例,并提供一个全局访问点。这种模式在系统中经常被用于控制对共享资源...

    C++ 实现的singleton 模式

    **C++实现的Singleton模式详解** Singleton模式是一种常用的软件设计模式,它保证一个类只有一个实例,并提供一个全局访问点。这种模式在很多场景下都非常有用,例如管理共享资源,如数据库连接池,或者确保某个...

    Singleton模式源程序

    在C++中,Singleton模式的实现通常涉及以下关键点: 1. 私有化构造函数:Singleton类的构造函数通常声明为私有的,防止其他类通过new操作符直接创建实例。 2. 单例实例的静态成员变量:这个静态成员变量保存...

    Java的Singleton模式代码(免资源分)

    ### Java的Singleton模式详解 #### 一、Singleton模式概述 Singleton模式是一种常用的设计模式,在Java中主要用于确保一个类只有一个实例,并提供一个全局访问点。这种模式对于管理共享资源(如数据库连接池、...

    设计模式C++学习之单例模式(Singleton)

    在C++中,实现单例模式有多种方法,我们将会深入探讨这一模式的原理、优缺点以及如何在实际编程中应用。 单例模式的核心在于控制类的实例化过程,防止多处代码创建多个实例导致资源的浪费或者状态不一致的问题。在...

    C++实现Singleton单例模式

    C++实现Singleton单例模式 本文档将详细介绍如何使用C++语言实现设计模式中的单例模式。单例模式是一种常用的设计模式,它可以确保一个类只能实例化一次。 单例模式的定义: 单例模式是一种创建型模式,它可以确保...

    C++CLI中实现singleton模式

    双重检测锁(Double-Checked Locking)实现的Singleton模式在多线程应用中有相当的价值。在ACE的实现中就大量使用ACE_Singleton模板类将普通类转换成具有Singleton行为的类。这种方式很好地消除了一些重复代码臭味,...

    设计模式 创建型模式 Singleton模式(单键)

    Singleton模式: 确保一个类只有唯一的一个实例。 Singleton主要用于对象的创建,这意味着,如果某个类采用了Singleton模式,则在这个类被创建后,它将有且仅有一个实例可供访问。很多时候我们都会需要Singleton...

    最简单的设计模式学习Singleton模式

    ### 最简单的设计模式...通过私有构造函数、静态成员变量和静态工厂方法的组合使用,可以轻松地在Java和C++等语言中实现Singleton模式。同时,在多线程环境下,需要特别注意线程安全问题,采取相应的措施确保单例性。

    C++设计模式课件12_Singleton_单件模式.pdf

    ### 单件模式(Singleton Pattern)详解 #### 概述 单件模式是软件设计模式中最为基础且应用广泛的一种模式。它确保一个类只有一个实例,并提供一个全局访问点来获取该实例。此模式通常用于那些需要频繁创建、消耗...

    C++设计模式.pdf

    Singleton模式确保一个类只有一个实例,并提供一个全局访问点。这种模式在需要控制资源访问(如数据库连接)的情况下很有用,可以避免多个实例导致的资源浪费和冲突。 #### Builder模式 Builder模式允许你分步骤...

    C++设计模式--基于Qt4开源跨平台开发框架

    创建型模式如单例模式(Singleton)、工厂模式(Factory Method)和抽象工厂模式(Abstract Factory),主要关注对象的创建过程,旨在减少类之间的耦合度。结构型模式如适配器模式(Adapter)、装饰器模式...

    极客班C++设计模式课件资料.zip

    创建型模式关注对象的创建,如单例(Singleton)、工厂方法(Factory Method)和建造者(Builder)模式等。结构型模式涉及如何组合类和对象,例如适配器(Adapter)、装饰器(Decorator)和代理(Proxy)模式。行为...

    C++设计模式-好书

    3. **Singleton模式** - **定义**: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 - **应用场景**: 控制资源访问时,如线程池、缓存等。 - **优点**: 控制了对资源的访问,确保了系统配置的一致性。 ...

    C++ 单一实例

    在C++中,有多种实现Singleton模式的方法,但它们通常包含以下几个关键步骤: 1. **私有化构造函数和拷贝构造函数**:为了防止外部直接通过`new`关键字创建实例,Singleton类的构造函数和拷贝构造函数通常声明为...

    C++设计模式代码资源12_Singleton.zip

    《C++设计模式:深入解析Singleton模式》 Singleton模式,作为设计模式中最为经典的一种,是一种创建型设计模式,它的核心思想是确保一个类只有一个实例,并提供一个全局访问点。在C++编程中,Singleton模式的应用...

    Qt qml Singleton 单例模式

    综上所述,Qt Qml的Singleton模式为全局共享对象提供了方便,使得在Qml环境中管理和访问同一对象变得简单。通过C++和Qml的有效结合,我们可以构建出高效且易于维护的应用程序。了解和熟练运用Singleton模式,对于...

    Head First 设计模式 (五) 单件模式(Singleton pattern) C++实现

    单件模式(Singleton pattern)是设计模式中的一种结构型模式,它的主要目的是确保一个类只有一个实例,并提供一个全局访问点。这种模式常用于系统中需要频繁创建和销毁的对象,如日志服务、线程池或者数据库连接等...

Global site tag (gtag.js) - Google Analytics