所以,我有课:

@interface Controller : NSObject
{
    UILabel* fileDescription;
}

@property(strong, nonatomic) UILabel* fileDescription;

如果属性fileDescription等于零,我是否需要使用方法dealloc

-(void)dealloc
{
    fileDescription = nil;
}

如果没有,谁会拒绝fileDescription使用的内存?

推荐答案

通常,您不需要提供子类dealloc方法,因为ARC管理实例变量的生存期.

然而,执行清理other than releasing objects是有用的,例如移除观察者或干净地关闭网络连接.因此,您可以在ARC下对dealloc进行子类化,但不允许从子类化方法中调用[super dealloc].

然而,在你的特殊情况下,这不是必需的.

Objective-c相关问答推荐

处理 ARC 中的指针对指针所有权问题

在 viewDidAppear 之前无法正确设置框架

如何将 UInt32 设置为最大值

带有 IB_DESIGNABLE 的 UIButton 会引发运行时属性警告,并且不会在 Interface Builder 中呈现

Objective-C 浮点舍入

如何在 iOS SDK 中使用语音识别?

NSManagedObjectContext performBlockAndWait:不在后台线程上执行?

静态 NSString 使用与内联 NSString 常量

观察 UIDatePicker 的变化

将子视图添加到 UIButton

如何对包含数字的 NSMutable 数组进行排序?

iPhone:在 UITextField 上禁用 Auto-Cap/autocorrect 问题

使用 NSLog 打印 NSData

iOS 11 large-title导航栏不折叠

-fembed-bitcode 在 6.0 之前的 iOS 版本上不受支持

协议和代表之间的区别?

如何在 Objective-C 中添加具有自己的 UIViewController 的子视图?

iOS 10 中的错误:无法从 https://mesu.apple.com/assets/ 复制assets资源信息以获取assets资源类型

通过情节提要加载时如何初始化视图?

Block 隐式保留'self';明确提及touch以表明这是预期行为