相关疑难解决方法(0)

我的Objective-C单身人物应该是什么样的?

我的单例访问器方法通常是以下的一些变体:

static MyClass *gInstance = NULL;

+ (MyClass *)instance
{
    @synchronized(self)
    {
        if (gInstance == NULL)
            gInstance = [[self alloc] init];
    }

    return(gInstance);
}
Run Code Online (Sandbox Code Playgroud)

我可以做些什么来改善这个?

singleton design-patterns objective-c object-initializers

334
推荐指数
10
解决办法
18万
查看次数

为什么"[self class] == [super class]"?

我希望[super class]返回超类的类,但我发现,使用此代码返回此类的类.

NSLogObject([self class]);
NSLogObject([super class]);
NSLogObject([self superclass]);
NSLogBool([self class] == [super class]);
Run Code Online (Sandbox Code Playgroud)

产量

[self class]: MainMenuScene
[super class]: MainMenuScene
[self superclass]: CCScene
[self class] == [super class]:[YES]
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么会这样吗?我希望它返回相同的值[self superclass].

Macros:
-------
#define NSLogBool(i)   NSLog(@"%s:[%@]", #i, (i) ? @"YES" : @"NO")
#define NSLogObject(o) NSLog(@"%s:[%@]", #o, o)

oop class objective-c superclass ios

6
推荐指数
1
解决办法
1211
查看次数

Objective-C:静态字段和实现单例模式

美好的一天,朋友们.

从新手回来关于Obj-C的愚蠢问题:)

我正在尝试在Obj-C中实现单例设计模式:

@interface SampleSingleton : NSObject {
@private
    static SampleSingleton* instance;
}
+(SampleSingleton*) getInstance;
Run Code Online (Sandbox Code Playgroud)

编译器返回错误:"在'静态'之前的预期说明符 - 限定符列表".

singleton constants objective-c

2
推荐指数
2
解决办法
5455
查看次数

"在objective-c上下文中,在非成员函数中使用'this'无效?

使用Xcode.

在这段代码中(func在接口中声明),告诉subj错误,站在带有'self'的字符串上.

+ (void) run: (Action) action after: (int) seconds 
{
    [self run:action after:seconds repeat:NO];
}
Run Code Online (Sandbox Code Playgroud)

什么......?

objective-c this self ios

2
推荐指数
1
解决办法
1102
查看次数