Iphone sdk 3.0 我应该在dealloc函数中释放一个IBOultet吗?

Iphone sdk 3.0 我应该在dealloc函数中释放一个IBOultet吗?,iphone-sdk-3.0,memory-management,memory-leaks,dealloc,Iphone Sdk 3.0,Memory Management,Memory Leaks,Dealloc,如果我的.h文件中有类似的内容: @property (nonatomic,retain) IBOutlet UIButton *btnHelp; 我应该在.m文件的dealloc函数中释放它吗?如果您确实想让这个属性读写,那么答案是肯定的——dealloc必须释放btnHelp。在代码中,属性用“retain”注释。这意味着,每当类的用户设置btnHelp属性时,类都会向新属性值发送一条“retain”消息,使类在设置完成后也负责发送一条“release”消息。如果在类初始化代码中创建btn

如果我的.h文件中有类似的内容:

@property (nonatomic,retain) IBOutlet UIButton *btnHelp;

我应该在.m文件的dealloc函数中释放它吗?

如果您确实想让这个属性读写,那么答案是肯定的——dealloc必须释放btnHelp。在代码中,属性用“retain”注释。这意味着,每当类的用户设置btnHelp属性时,类都会向新属性值发送一条“retain”消息,使类在设置完成后也负责发送一条“release”消息。如果在类初始化代码中创建btnHelp,请确保也将其保留在那里

但是,如果您只想提供对从NIB文件加载的按钮的只读访问,则无需担心释放它——这是加载NIB的对象的责任。在这种情况下,将“retain”替换为“readonly”