Joã*_*nho 3 iphone memory-management objective-c class-method
我一直关注iTunes U上的iPhone开发视频,到目前为止一直很好.我想我理解得很好.
问题是,在他们提供的示例中,他们从不创建自定义类方法,就像您在某些基础类上使用的那些(如[NSString string])所以我不确定如何创建自己的类方法返回我的班级的自动释放实例.
我知道如何使用实例方法创建一个保留对象,但我宁愿使用类方法,因为我更喜欢它,我只是不确定这个实现是否最适合返回一个自动释放的对象:
+ (PhotoViewController*)initWithImageView:(UIImageView*)imageView
{
PhotoViewController *toreturn = [[PhotoViewController alloc] init];
toreturn.imageview = imageView;
[toreturn autorelease];
return toreturn;
}
Run Code Online (Sandbox Code Playgroud)
非常感谢您提供的任何帮助.
类方法可以根据需要返回保留或自动释放的对象,并且您的代码可以完全适当地返回自动释放的对象.
但是,您应该以不同方式命名您的方法.由于您的方法始于init,这意味着它正在初始化一个alloced对象(因此应该是一个实例方法而不是一个类方法).photoViewControllerWithImageView:如果它要返回一个自动释放的对象,我建议命名该方法.
此外,我可能会写它,return [toreturn autorelease];但我想这是我的风格偏好.
| 归档时间: |
|
| 查看次数: |
1269 次 |
| 最近记录: |