在ARC工程中,
_netWorkAlertView = [[UIAlertViewalloc] initWithTitle:nilmessage:@"正在使用3G网络,可能产生较大流量" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"继续", nil];
[_netWorkAlertView show];
#pragma mark UI Alert View Delegate Methods
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
alertView = nil;
}
此时,_netWorkAlertView 指向的内存并没有被释放。
解释;
全局变量_netWorkAlertView 和局部变量 alertView 指向同一块内存,当alertView = nil时,只是释放了alertView这个指针,由于内存块内还有_netWorkAlertView指向,所以没有释放。