现在......这个NSDate有效的几个渲染周期。但是,在第3个周期左右,此变量的值似乎已损坏。
当我设置断点时,我注意到我可以悬停鼠标并看到正确显示的数据(当它有效时)。但是当它无效时我或者看到“超出范围”,一些奇怪的字符串(看起来有点像库文件名或其他东西),或者在极少数情况下调试器不会向我显示任何变量的值(我讨厌在xcode中调试)。 / p>
所以这就是为什么我认为这个变量以某种方式被破坏了。 我应该将此合成属性设置为(非原子,保留)吗?或者它应该被宣布为其他什么?
答案 0 :(得分:0)
我想我发现了这个问题。
我有一个方法叫:
- (NSDate*) getNSDateFromString:(NSString*)stringDate;
当我打电话给我时,我正在做NSDate * date = [self getNSDateFromString:expirationString]; 这导致我上面描述的行为。
然后我将其更改为以下消除了崩溃:
NSDate *date = [[self getNSDateFromString:expirationString] retain];
// do something with the date here...
[data release];