[Objective C] Singleton类的一个模版

首先声明,该模版借鉴自cocos2D。
获取Singleton类的对象时,调用的函数名称为:shared<ClassName>。

废话不说,代码如下:

// SingletonClass.m

@implementation SingletonClass

static SingletonClass* instance = nil;

+(SingletonClass) sharedSingletonClass
{
    if (instance == null)
    {
        instance = [[SingletonClass alloc] init];
    }
    return instance;
}

+(void) purgeSharedSingletonClass    // 对于生命周期和app相同的对象,这个函数不需要实现。
{
    [instance release];          // 对于instance == nil的情况,不会出错。
    instance = nil;
}

-(void) dealloc
{
    instance = nil;
    [super dealloc];
}

 

posted @ 2012-03-01 23:45  linear  阅读(239)  评论(1编辑  收藏  举报