Objective c 在Xcode中调试单例

Objective c 在Xcode中调试单例,objective-c,xcode,debugging,singleton,Objective C,Xcode,Debugging,Singleton,我可以在自己的类(文件)中看到单例的属性,但在调试器的其他文件中看不到它们。既然singleton充当全局变量,为什么我不能或如何在调试器上查看它?我是否必须将单例分配给另一个局部变量,以便我可以查看局部变量而不是单例?通常您有一个sharedInstance类方法 @implementation MySingleton + (MySingleton *)sharedInstance { static MySingleton *_sharedInstance = nil; s

我可以在自己的类(文件)中看到单例的属性,但在调试器的其他文件中看不到它们。既然singleton充当全局变量,为什么我不能或如何在调试器上查看它?我是否必须将单例分配给另一个局部变量,以便我可以查看局部变量而不是单例?

通常您有一个
sharedInstance
类方法

@implementation MySingleton

+ (MySingleton *)sharedInstance {
    static MySingleton *_sharedInstance = nil;

    static dispatch_once_t once_token = 0;
    dispatch_once(&once_token, ^{
        _sharedInstance = [[MySingleton alloc] init];
    });

    return _sharedInstance;
}

@end
并通过

MySingleton *mySingleton = [MySingleton sharedInstance];

单例不是一个全局变量,它是一个全局方法。要查看它,请在控制台中键入
po[SingletonClass singleInstance]
@HotLicks,然后如何查看singletonstance中的属性。例如,如果我想查看一个数组中的所有对象,我是否必须单独键入po[blah blah blah blah]才能查看所有对象?如果在数组上执行
po
,它将显示所有对象,与NSLog完全相同。