| 订阅 | 在线投稿
分享
 
 
当前位置: 王朝网络 >> c/c++ >> C++ she ji mo shi zhi Singleton

C++ she ji mo shi zhi Singleton

2008-06-01 02:07:08 编辑來源:互联网 评论
 
 
 
本文为【C++设计模式之Singleton】的拼音翻译版
  yi 、 gong neng bao zheng yi ge lei jin you yi ge shi li 。 san 、 you que dian Singleton mo shi shi zuo wei " quan ju bian liang " de ti dai pin chu xian de 。 suo yi ta ju you quan ju bian liang de te dian : quan ju ke jian 、 guan chuan ying yong cheng xu de zheng ge sheng ming qi , ta ye ju you quan ju bian liang bu ju bei de xing zhi : tong lei xing de dui xiang shi li zhi ke neng you yi ge 。
  si 、 shi xian
  jiao ke shu shang de Singleton ding yi ru xia :
  class Singleton
  {
  public:
  static Singleton* Instance() ;
  protected:
  Singleton() {}
  private:
  static Singleton *_instance ;
  Singleton(const Singleton&) ;
  Singleton& operator=(const Singleton&) ;
  } ;
  Singleton* Singleton::_instance = NULL ;
  Singleton* Singleton::Instance()
  {
  (_instance == NULL) ? _instance = new Singleton() : 0 ; //lazy initialization
  return _instance ;
  }
  (1) yin wei fan hui de shi zhi zhen , wei fang zhi yong hu tiao yong delete han shu , ke ba static Singleton *_instance; gai wei zai Instance() zhong ding yi static Singleton _instance。 zhe yang xian ran geng an quan , tong shi ye ju you lazy initialization de te xing ( ji di yi ci fang wen shi cai chuang jian )。
  (2) jia she xu yao cong Singleton pai sheng zi lei , er zi lei ye xu yao you tong yang de xing zhi , ji zhi neng chuang jian yi ge shi li 。 wo jiao de , zhe hen nan ban 。 gen ben yuan yin zai yu Instance() han shu bu shi xu han shu , bu ju you duo tai de xing zhi 。 yi zhong chang yong fang fa shi ba Instance() han shu yi dao zi lei zhong , zhe shi jiu zhi neng yong static Singleton *_instance, er bu neng yong static Singleton _instance le , chu fei ba _instance ye yao yi dao zi lei , wu lun zen me zuo dou bu you ya 。 ling yi zhong fang fa shi yong mo ban 。 ju ti yong shen me fang fa , zhi neng gen ju shi ji qing kuang quan heng 。
  wu 、 shi li dai ma
  (1) mei zi lei de qing kuang
  namespace DesignPattern_Singleton
  {
  class Singleton
  {
  public:
  static Singleton* Instance() { static Singleton _instance ; return &_instance ; }
  protected:
  Singleton() {}
  private:
  Singleton(const Singleton&) ;
  Singleton& operator=(const Singleton&) ;
  } ;
  }
  ke hu duan dai ma :
  {
  using namespace DesignPattern_Singleton ;
  Singleton *p = Singleton::Instance() ;
  ......
  }
  (2) you zi lei de qing kuang
  fang fa yi :
  namespace DesignPattern_Singleton
  {
  // class Singleton
  class Singleton
  {
  protected:
  Singleton() {}
  static Singleton *_instance ;
  private:
  Singleton(const Singleton&) ;
  Singleton& operator=(const Singleton&) ;
  } ;
  Singleton* Singleton::_instance = NULL ;
  // class ConcreteSingleton
  class ConcreteSingleton : public Singleton
  {
  public:
  static Singleton* Instance() ;
  protected:
  ConcreteSingleton() {}
  } ;
  Singleton* ConcreteSingleton::Instance()
  {
  (_instance == NULL) ? _instance = new ConcreteSingleton() : 0 ;
  return _instance ;
  }
  }
  ke hu duan dai ma :
  {
  using namespace DesignPattern_Singleton ;
  Singleton *p = ConcreteSingleton::Instance() ;
  }
  fang fa er :
  namespace DesignPattern_Singleton
  {
  // class Singleton
  class Singleton
  {
  protected:
  Singleton() {}
  private:
  Singleton(const Singleton&) ;
  Singleton& operator=(const Singleton&) ;
  } ;
  // class ConcreteSingleton
  class ConcreteSingleton : public Singleton
  {
  public:
  static Singleton* Instance() { static ConcreteSingleton _instance ; return &_instance ; }
  protected:
  ConcreteSingleton() {}
  } ;
  }
  ke hu duan dai ma :
  {
  using namespace DesignPattern_Singleton ;
  Singleton *p = ConcreteSingleton::Instance() ;
  
   }
  fang fa san :
  namespace DesignPattern_Singleton
  {
  template < class T >
  class Singleton
  {
  public:
  static T* Instance() { static T _instance ; return &_instance ; }
  protected:
  Singleton() {}
  private:
  Singleton(const Singleton &) ;
  Singleton& operator=(const Singleton&) ;
  } ;
  class ConcreteSingleton : public Singleton< ConcreteSingleton > {} ;
  }
  ke hu duan dai ma
  {
  using namespace DesignPattern_Singleton ;
  ConcreteSingleton *p = ConcreteSingleton::Instance() ;
  }【原文】【汉音对照
 
 
 
 
 
 
 
 
 
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

如何磨出破洞牛仔裤?牛仔裤怎么剪破洞?

把牛仔裤磨出有线的破洞 1、具体工具就是磨脚石,下面垫一个硬物,然后用磨脚石一直磨一直磨,到把那块磨薄了,用手撕开就好了。出来的洞啊很自然的。需要猫须的话调几...

我就是扫描下图得到了敬业福和爱国福

先来看下敬业福和爱国福 今年春节,支付宝再次推出了“五福红包”活动,表示要“把欠大家的敬业福都还给大家”。 今天该活动正式启动,和去年一样,需要收集“五福”...

冰箱异味产生的原因和臭味去除的方法

有时候我们打开冰箱就会闻到一股异味,冰箱里的这种异味是因为一些物质发出的气味的混合体,闻起来让人恶心。 产生这些异味的主要原因有以下几点。 1、很多人有这种习...

 
 
yi 、 gong neng    bao zheng yi ge lei jin you yi ge shi li 。    san 、 you que dian  Singleton mo shi shi zuo wei " quan ju bian liang " de ti dai pin chu xian de 。 suo yi ta ju you quan ju bian liang de te dian : quan ju ke jian 、 guan chuan ying yong cheng xu de zheng ge sheng ming qi , ta ye ju you quan ju bian liang bu ju bei de xing zhi : tong lei xing de dui xiang shi li zhi ke neng you yi ge 。    si 、 shi xian    jiao ke shu shang de Singleton ding yi ru xia : class Singleton { public: static Singleton* Instance() ; protected: Singleton() {} private: static Singleton *_instance ; Singleton(const Singleton&amp;) ; Singleton& operator=(const Singleton&) ; } ; Singleton* Singleton::_instance = NULL ; Singleton* Singleton::Instance() { (_instance == NULL) ? _instance = new Singleton() : 0 ; //lazy initialization return _instance ; }   (1) yin wei fan hui de shi zhi zhen , wei fang zhi yong hu tiao yong delete han shu , ke ba static Singleton *_instance; gai wei zai Instance() zhong ding yi static Singleton _instance。 zhe yang xian ran geng an quan , tong shi ye ju you lazy initialization de te xing ( ji di yi ci fang wen shi cai chuang jian )。   (2) jia she xu yao cong Singleton pai sheng zi lei , er zi lei ye xu yao you tong yang de xing zhi , ji zhi neng chuang jian yi ge shi li 。 wo jiao de , zhe hen nan ban 。 gen ben yuan yin zai yu Instance() han shu bu shi xu han shu , bu ju you duo tai de xing zhi 。 yi zhong chang yong fang fa shi ba Instance() han shu yi dao zi lei zhong , zhe shi jiu zhi neng yong static Singleton *_instance, er bu neng yong static Singleton _instance le , chu fei ba _instance ye yao yi dao zi lei , wu lun zen me zuo dou bu you ya 。 ling yi zhong fang fa shi yong mo ban 。 ju ti yong shen me fang fa , zhi neng gen ju shi ji qing kuang quan heng 。    wu 、 shi li dai ma   (1) mei zi lei de qing kuang namespace DesignPattern_Singleton { class Singleton { public: static Singleton* Instance() { static Singleton _instance ; return &_instance ; } protected: Singleton() {} private: Singleton(const Singleton&) ; Singleton& operator=(const Singleton&) ; } ; } ke hu duan dai ma : { using namespace DesignPattern_Singleton ; Singleton *p = Singleton::Instance() ; ...... }   (2) you zi lei de qing kuang fang fa yi : namespace DesignPattern_Singleton { // class Singleton class Singleton { protected: Singleton() {} static Singleton *_instance ; private: Singleton(const Singleton&) ; Singleton& operator=(const Singleton&) ; } ; Singleton* Singleton::_instance = NULL ; // class ConcreteSingleton class ConcreteSingleton : public Singleton { public: static Singleton* Instance() ; protected: ConcreteSingleton() {} } ; Singleton* ConcreteSingleton::Instance() { (_instance == NULL) ? _instance = new ConcreteSingleton() : 0 ; return _instance ; } } ke hu duan dai ma : { using namespace DesignPattern_Singleton ; Singleton *p = ConcreteSingleton::Instance() ; } fang fa er : namespace DesignPattern_Singleton { // class Singleton class Singleton { protected: Singleton() {} private: Singleton(const Singleton&) ; Singleton& operator=(const Singleton&) ; } ; // class ConcreteSingleton class ConcreteSingleton : public Singleton { public: static Singleton* Instance() { static ConcreteSingleton _instance ; return &_instance ; } protected: ConcreteSingleton() {} } ; } ke hu duan dai ma : { using namespace DesignPattern_Singleton ; Singleton *p = ConcreteSingleton::Instance() ; } fang fa san : namespace DesignPattern_Singleton { template < class T > class Singleton { public: static T* Instance() { static T _instance ; return &_instance ; } protected: Singleton() {} private: Singleton(const Singleton &) ; Singleton& operator=(const Singleton&) ; } ; class ConcreteSingleton : public Singleton< ConcreteSingleton > {} ; } ke hu duan dai ma { using namespace DesignPattern_Singleton ; ConcreteSingleton *p = ConcreteSingleton::Instance() ; }
󰈣󰈤
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
玉美人_珠联璧合
清纯美女米卡
清新靓丽的早晨
玲子的自信与性感
痞子的甘南日记
疑是银河落九天
雪域坝上四——纯美色
冬日恋歌——西城杨柳弄轻柔
 
>>返回首页<<
 
 
 为你推荐
 
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
 
 
 
©2005- 王朝网络 版权所有