Objective-C – 编写简单方法的最佳实践?
在以下功能中哪一个是最佳实践?
>要发送自动释放的对象,并让调用者保留它? - (NSString*) convertDataToString :(NSData*)myData { //just an example,method might not exist NSString *str = [[NSString alloc] initWithData:myData]; return str; return [str autoRelease]; } 解决方法
memory management rules说你的第一个例子是 – 这是直接引用 – 错误.这甚至不是偏好问题,因为这里的一些答案似乎表明了这一点.调用者通常不拥有您返回的对象,因此应该自动释放.
规则中的具体示例说明了这一点:
– (NSArray *)sprockets { NSArray *array = [[NSArray alloc] initWithObjects:mainSprocket,auxiliarySprocket,nil]; return array; }
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |