91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C++單例類怎樣實現懶加載

c++
小樊
85
2024-07-25 17:18:14
欄目: 編程語言

在C++中實現懶加載的單例類可以使用靜態成員變量和靜態成員函數來實現。以下是一個示例代碼:

class Singleton {
private:
    static Singleton* instance; // 靜態成員變量

    Singleton() { } // 防止外部實例化
public:
    static Singleton* getInstance() { // 靜態成員函數返回單例實例
        if (instance == nullptr) {
            instance = new Singleton();
        }
        return instance;
    }
};

Singleton* Singleton::instance = nullptr; // 初始化靜態成員變量

int main() {
    Singleton* singleton1 = Singleton::getInstance();
    Singleton* singleton2 = Singleton::getInstance();

    if (singleton1 == singleton2) {
        std::cout << "singleton1 and singleton2 are the same instance" << std::endl;
    } else {
        std::cout << "singleton1 and singleton2 are different instances" << std::endl;
    }

    return 0;
}

在上面的示例中,Singleton類有一個私有的靜態成員變量instance用來存儲單例實例。靜態成員函數getInstance用來返回單例實例,當實例為nullptr時進行懶加載,即在第一次調用getInstance時創建實例。在main函數中,我們通過調用getInstance函數獲取單例實例,并驗證兩個實例是否相同。

這樣就實現了在C++中使用懶加載方式創建單例類的方法。

0
任丘市| 渭源县| 区。| 昌乐县| 城口县| 武胜县| 久治县| 醴陵市| 郯城县| 满城县| 北流市| 新河县| 留坝县| 崇仁县| 洛扎县| 开原市| 济宁市| 海晏县| 沈阳市| 田阳县| 会东县| 玉溪市| 迁安市| 吐鲁番市| 封丘县| 黄梅县| 来凤县| 邵阳县| 兖州市| 聊城市| 博客| 察隅县| 广元市| 利川市| 本溪市| 岳普湖县| 弥勒县| 新蔡县| 新竹县| 梁河县| 呼玛县|