1

我在理解以下代码时有点困难。

    #define ENABLE_MEMORY_DEBUG 0

#if ENABLE_MEMORY_DEBUG
#if TARGET_IPHONE_SIMULATOR

extern BOOL NSDebugEnabled;
extern BOOL NSZombieEnabled;
extern BOOL NSHangOnUncaughtException;
extern BOOL NSDeallocateZombies;

#endif
#endif

int main(int argc, char *argv[])
{
#if ENABLE_MEMORY_DEBUG
#if TARGET_IPHONE_SIMULATOR
    NSDebugEnabled = YES;
    NSZombieEnabled = YES;
    NSHangOnUncaughtException = YES;
    NSDeallocateZombies = NO;
#endif
#endif
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil,nil);
    [pool release];
    return retVal;
}

这是一种以编程方式启用 NSZombie 的方法吗?这些是任何预定义的 BOOL 变量 - NSDebugEnabled、NSZombieEnabled、NSHangOnUncaughtException、NSDeallocateZombies?我从来没有像这样启用过 NSZombie。我曾经从 Edit Scheme->Environmental variables 启用 NSZombie,然后添加值为 TRUE 的 NSZombiewEnables 变量。

有任何想法吗,

谢谢,问候, Tek3

4

0 回答 0