我找到了一个有趣的post,它描述了在Objective-C 2.0中如何在实现文件中声明实例变量。考虑这个例子:
@interface MyClass {}
@end
@implementation MyClass {
NSObject *obj1;
NSObject *obj2;
}
@end
请注意,ivars obj1
和obj2
不是声明的属性。由于它们未使用@property
声明声明,因此没有相应的所有权限定符,例如weak
/ strong
。
我的问题是,使用自动引用计数(ARC)的项目是否记得清理以这种方式声明的对象?任何解决这一具体问题的文件都将受到赞赏。
是的,这些隐含地在他们面前有一个__strong
。 ARC将按照您对强势房产的期望来处理它们。文档中的相应部分是4.4.1. Objects
。