如何在函數中返回新分配的對象?如何在Objective-C函數中返回新分配的對象?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"liteCell"];
[cell.textLabel setText:@"Lite"];
return cell; // Object returned to caller as an owning reference (single retain count transferred to caller)
}
對象泄露:分配並存儲到「細胞」的對象是從它的名稱的方法返回(「:的cellForRowAtIndexPath:的tableView」)不與「複製」,「mutableCopy」,「的alloc」或'新'。這違反了內存管理指南中的可可
的命名約定規則
當然這是假設你不使用ARC。在ARC下,您只需返回該單元格,ARC就會隱含地執行正確的操作。 – 2013-04-06 19:40:09