中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++怎么實現單例模式

c++
小億
87
2023-10-21 13:04:08
欄目: 編程語言

在C++中,可以通過以下兩種方式實現單例模式:

  1. 餓漢式單例模式:
class Singleton {
private:
    static Singleton* instance;
    Singleton() {} // 將構造函數設為私有,禁止外部創建對象
public:
    static Singleton* getInstance() {
        if (instance == nullptr) {
            instance = new Singleton();
        }
        return instance;
    }
};

Singleton* Singleton::instance = nullptr;

使用時可以通過Singleton::getInstance()獲取單例對象。

  1. 懶漢式單例模式:
class Singleton {
private:
    static Singleton* instance;
    Singleton() {} // 將構造函數設為私有,禁止外部創建對象
public:
    static Singleton* getInstance() {
        if (instance == nullptr) {
            instance = new Singleton();
        }
        return instance;
    }
};

Singleton* Singleton::instance = nullptr;

使用時可以通過Singleton::getInstance()獲取單例對象。

這兩種方式都將構造函數設為私有,禁止外部創建對象,通過靜態成員變量和靜態成員函數來實現單例對象的創建和獲取。在餓漢式中,單例對象在程序啟動時就會被創建出來,在懶漢式中,單例對象在第一次被使用時才會被創建出來。

0
胶南市| 和田市| 肇东市| 瓮安县| 宁陵县| 金坛市| 壶关县| 固安县| 贵阳市| 黄浦区| 镇雄县| 宁阳县| 西安市| 清徐县| 新干县| 洛南县| 广平县| 逊克县| 云霄县| 宁化县| 清丰县| 临沂市| 安溪县| 南通市| 枣强县| 正定县| 新乡市| 乐业县| 开平市| 盘锦市| 赞皇县| 稻城县| 宜章县| 宁波市| 永清县| 金阳县| 罗源县| 酒泉市| 嵊州市| 巴马| 舒兰市|