原创作者: ideage
阅读:808次
评论:0条
更新时间:2011-05-26
引言 语言的进步,可以简化设计模式的实现.
Singleton模式
类型:创建型
意义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
1.D的实现
一个类的实现
实现后每次都要复制粘贴,很累,用模版类,更方便:
2.使用例子
Singleton模式
类型:创建型
意义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
1.D的实现
一个类的实现
class Singleton { public: static Singleton opCall() { if(_instance is null) _instance = new Singleton; return _instance; } protected void init(){} private: this() {this.init();} static Singleton _instance; }
实现后每次都要复制粘贴,很累,用模版类,更方便:
class Singleton(T) { public static T opCall() { if(_instance is null) _instance = new T; return _instance; } protected void init(){} private: this() { this.init(); } static T _instance; }
2.使用例子
class Option:Singleton!(Option) { char[] foo(){ return "Hello!";} } int main() { writefln(Option().foo); return 0; }
评论 共 0 条 请登录后发表评论