簡體   English   中英

單類實例C ++

[英]Single class instance C++

是否有可能創建一個可以構造一次的類? 如果您嘗試創建它的其他實例,則應發生編譯時錯誤。

實例化在運行時是動態的。 編譯錯誤是在編譯時。 所以答案是否定的,在任何第二次實例化時都不可能得到編譯錯誤。

但是你可以使用單身人士,但要仔細考慮是否真的需要。

為什么編譯錯誤? 我認為你只需要實現Singleton設計模式。 這里

只有一個實例的類稱為singleton classess,

有很多方法可以執行此操作。 最簡單的如下所示

class MySingleton
    {
    public:
      static MySingleton& Instance()
      {
        static MySingleton singleton;
        return singleton;
      }

    // Other non-static member functions
    private:
      MySingleton() {};                                 // Private constructor
      MySingleton(const MySingleton&);                 // Prevent copy-construction
      MySingleton& operator=(const MySingleton&);      // Prevent assignment
    };

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM