If I understand this correctly, copy enforces the setter to create a copy of the object passed in. However, if I use it together with readonly, the
According to Apple's documentation (which I've linked here for you):
copy
Specifies that a copy of the object should be used for assignment.The previous value is sent a
releasemessage.The copy is made by invoking the
copymethod. This attribute is valid only for object types, which must implement theNSCopyingprotocol.
So yes, you're correct... readonly creates a getter method and copy would be effectively ignored, since there's no setter method that does assignment.