在属性声明中,可以发送“copy”属性。您不能对所有对象使用复制,但可以使用复制属性?
答案 0 :(得分:6)
-copy
不是属性,它是一种方法。将-copy
发送到实现NSCopying协议的任何对象都可以。
如果您有属性,如果属性的类型是实现copy
的类,您可以(应该?)使用NSCopying
属性。即任何可以发送-copy
的课程。
答案 1 :(得分:0)
您无法复制类。复制是一种实例方法,它使克隆实例脱离另一个实例。为了使实例可以复制,它需要实现NSCopying
协议。一些NSFundation / Cocoa类实现它,有些则不实现它。对于那些不需要的人,你必须自己使用类别编写实现。但是要小心,对于UI类来说这可能非常棘手。