在ARC中,不需要手动指定对象的内存管理属性,编译器会自动根据对象的类型和使用情况为其添加内存管理相关代码。
例如,在非ARC环境中,需要手动为一个属性指定关键字来控制内存管理行为:
@property (nonatomic, retain) NSString *name;
但在ARC环境下,只需要声明该属性,编译器会自动添加内存管理相关代码:
@property (nonatomic, strong) NSString *name;
需要注意的是,ARC只能管理OC对象类型的内存,对于C语言类型或结构体等,仍需要手动管理内存。
示例代码:
@interface Person : NSObject @property (nonatomic, strong) NSString *name; @end
@implementation Person
@end