如何快速找到問題出在哪里?下面介紹幾種方法:
一:在xcode中Run,Stop 右邊也就是選擇設(shè)備的地方左邊找到
Scheme >Edit Scheme>Arguments>Environment Variables下面添加
1. NSZombieEnabled ? ? ? ? ? ? ? ? ? ? ? YES
2. MallocStackLoggingNoCompact ? YES
3. MallocStackLogging ? ? ? ? ? ? ? ? ? ? ?YES
第一項(xiàng) 讓系統(tǒng)把錯(cuò)誤地址打印出來
第二項(xiàng) 可讓xcode記錄每個(gè)地址alloc的歷史谨履,這樣我們就可以用命令把這個(gè)地址還原出來
第三項(xiàng) 可開放MallocStack拴疤,就知道記憶體在程式進(jìn)行中被配置的歷史
2.在.m或者.mm文件中? 直接添加打印最后日志文件 代碼如下:
#ifdef _FOR_DEBUG_
- (BOOL)respondsToSelector:(SEL)rtSelector
{
NSString *className = NSStringFromClass([self class]) ;
NSLog(@"%@ --> RTSelector: %s",className,[NSStringFromSelector(rtSelector)UTF8String]);
return [super respondsToSelector:rtSelector];
}
#endif