使用EXC_BAD_ACCESS进行属性崩溃的getter方法

时间:2012-06-14 14:57:25

标签: ios objective-c exc-bad-access getter-setter

我已经声明了一个属性someProperty并合成它:

@synthesize someProperty = _someProperty;

但是当我在代码中调用它时,我在getter overide方法中得到了EXC_BAD_ACCESS。为什么?

- (NSString *) someProperty {  <---EXC_BAD_ACCESS HERE
    if(!self.someProperty)
        return self.someOtherProperty;
    return self.someProperty;
}

1 个答案:

答案 0 :(得分:9)

我认为您可能会收到 Stack Overflow!,因为该行

if(!self.someProperty)

将致电

- (NSString *) someProperty

递归,直到递归堆栈溢出。

同样,如果它可以到达返回线,它也可以做同样的事情。