If I have a read-only string property, is it necessary to specify strong (or retain) or copy in the declaration? If I don’t specify, is one of them assumed?
It seems to me the ownership attribute is only useful when you have a setter.
@property (nonatomic, readonly) NSString *name;
That is mostly correct. For a
readonlyproperty,strong,retain,weak, andassignhave no effect. But if you also declare the property elsewhere asreadwrite(most frequently in an anonymous category in the.m), then the other modifiers need to match.