NSZombiEnabled设置

时间:2012-11-30 05:31:45

标签: objective-c nszombieenabled

我正在尝试检查NSZombieEnabled是否在我的代码中工作。 我有以下设置:

enter image description here

enter image description here

enter image description here

我在didFinishLaunchingWithOptions

中有以下代码
NSString *string = nil;
    [string release];
    string = @"abc";

但是,没有生成错误。 NSZombie也没有任何通知。我应该做些更多的设置吗?请帮助我,因为我已经导入了一个lib,并且有一个EXC_BAD_ACCESS,代码13正在发生,我无法解决错误原因。

堆栈和控制台看起来像这样 enter image description here

1 个答案:

答案 0 :(得分:2)

您的设置正确,但您的代码不会创建任何僵尸。僵尸是一个已经被释放但被重复使用的物体。像这样的东西会创造一个僵尸:

NSString* string = [NSString stringWithString:@"abc"];
[string release];
[string length];

在此示例中,字符串已释放,然后您尝试通过调用其length方法来使用它。

对于您的库,当它为您提供EXC_BAD_ACCESS时,堆栈是什么样的?