SORU
20 Mayıs 2011, Cuma


Devre dışı kopya kurucu

Dersim var :

class SymbolIndexer {
protected:
  SymbolIndexer ( ) { }

public:
  static inline SymbolIndexer & GetUniqueInstance ( ) 
  { 
    static SymbolIndexer uniqueinstance_ ;
    return uniqueinstance_ ; 
  }
};

Nasıl devre dışı bırakmak için kodu değiştirmek gerekir:

SymbolIndexer symbol_indexer_ = SymbolIndexer::GetUniqueInstance ( );

ve sadece kodu ver :

SymbolIndexer & ref_symbol_indexer_ = SymbolIndexer::GetUniqueInstance ( );

CEVAP
20 Mayıs 2011, Cuma


Kopya yapıcı özel yapmak ve uygulanmasını sağlamak

private:
    SymbolIndexer(const SymbolIndexer& that);

Veya C 11, açıkça yasaklar:

SymbolIndexer(const SymbolIndexer& that) = delete;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Google Россия

    Google Ро

    9 Temmuz 2007
  • ipsy

    ipsy

    1 EKİM 2012
  • TotalxLuna

    TotalxLuna

    27 Kasım 2011