我知道我们应该对Obj-C对象属性/ ivars使用strong /弱。但我发现我可以将强类用于类型属性/ ivars。
@property (nonatomic, strong) Class testClass;
代码不会导致生成错误。为什么?我们应该使用strong还是分配?
答案 0 :(得分:2)
类对象不是实例,但它绝对是一个完整的对象
您无需执行任何操作即可创建类对象。程序定义的每个类的一个类对象是在程序启动时自动为您创建的。
当然,您可以将strong
用于对象。
什么时候发布了一个类对象? - 简单的答案就是程序完成时。
没有理由关心在程序运行时永远不会释放的对象的保留计数。这意味着如果你使用strong / weak / assign并不重要,那么在程序完成之前这个对象仍然不会被销毁。
所以你可以使用你想要的任何东西,他们会给出相同的结果。