0
BOOL continueLoop;
CGPoint thePoint;
while(continueLoop != NO)
{
continueLoop = NO;
thePoint = [self generateRandomLocation];
NSMutableArray *blocks = [self getBlocksForX:thePoint.x];
for(BlueBlock *block in blocks)
{
if(block.getBlockLocationY == thePoint.y)
{
continueLoop = YES;
}
}
[blocks release];
}
這會導致在儀器中運行時發生崩潰,但不會在Xcode中運行。我縮小了問題的範圍,發生在這行代碼在循環中時... NSMutableArray * blocks = [self getBlocksForX:thePoint.x];該方法返回一個NSMutableArray,每次執行循環時我都將其存儲在塊中,然後在循環結束時將其釋放。什麼會導致儀器崩潰?代碼行導致儀器崩潰,但不是Xcode
該方法返回一個已分配的NSMutableArray – ACV 2009-11-24 01:44:27
啊,通常的約定是(從內存管理編程指南)'你使用名稱以「alloc」或「new」開頭或包含「copy」http的方法創建一個對象http ://developer.apple.com/mac/library/documentation/cocoa/Conceptual/MemoryMgmt/Articles/mmObjectOwnership.html#//apple_ref/doc/uid/20000043-BEHDEDDB – cobbal 2009-11-24 01:47:23
好吧,我還在學習我會記得那爲了未來。 – ACV 2009-11-24 01:50:14