日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

7.单例模式

發(fā)布時(shí)間:2024/9/27 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 7.单例模式 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1單例的核心內(nèi)容是:

A:有靜態(tài)的類成員變量。獲得實(shí)例的方式是通過(guò)公有的getInstance()方法。

2單例模式的作用:通過(guò)單例模式,讓一個(gè)類在項(xiàng)目中只有一個(gè)實(shí)例。

3單例模式具體描述

//單例模式:單例模式確保某一個(gè)類只有一個(gè)實(shí)例,

//而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例單例模式

//。單例模式只應(yīng)在有真正的“單一實(shí)例”的需求時(shí)才可使用。

//

//俺有6個(gè)漂亮的老婆,她們的老公都是我,

//我就是我們家里的老公Sigleton,她們只要說(shuō)道“老公”,

//都是指的同一個(gè)人,那就是我(剛才做了個(gè)夢(mèng)啦,哪有這么好的事)

4.單例模式類圖

5.代碼:

#include <iostream>

#include <string>

using namespace std;

//單例模式:單例模式確保某一個(gè)類只有一個(gè)實(shí)例,

//而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例單例模式

//。單例模式只應(yīng)在有真正的“單一實(shí)例”的需求時(shí)才可使用。

//

//俺有6個(gè)漂亮的老婆,她們的老公都是我,

//我就是我們家里的老公Sigleton,她們只要說(shuō)道“老公”,

//都是指的同一個(gè)人,那就是我(剛才做了個(gè)夢(mèng)啦,哪有這么好的事)

?

//通過(guò)下面一句使私有的變成共有的

//#definepublic private

//下面這種也只有一個(gè)實(shí)例

class

{

public:

protected:

private:

} al;

?

//單例實(shí)現(xiàn)代碼:

class Singleton

{

private:

??? int i;

??? static Singleton *instance;

??? Singleton(int i)

??? {

??????? this->i = i;

??? }

public:

??? //通過(guò)下面的方式創(chuàng)建實(shí)例

??? static Singleton *getInstance()

??? {

??????? return instance;

??? }

??? void show()

??? {

??????? cout << i << endl;

??? }

};

?

//靜態(tài)私有成員必須在類外部初始化,相當(dāng)于把下面的移到成員所在位置

Singleton* Singleton::instance = new Singleton(8899);

?

class A :public Singleton

{

};

?

int main()

{

??? Singleton *s = Singleton::getInstance();

??? Singleton *s2 = A::getInstance();

??? //下面輸出的結(jié)果為1,表示是單例的

??? cout << (s == s2) << endl;

??? cin.get();

??? return 0;

}

運(yùn)行結(jié)果如下:

1



總結(jié)

以上是生活随笔為你收集整理的7.单例模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。