Используя предоставленный вами код
@interface MyClass : NSObject {
@private
NSString *returnStr;
}
@property (nonatomic, readonly) NSString *returnStr;
@end
Ваш установщик свойства определяется с помощью простого назначения
Таким образом, вы можете использовать оба фрагмента кода для настройки значения assignStr, это будет правильно с точки зрения управления памятью; логичным должно быть использование классического шаблона присваивания.
Но на самом деле это больше о том, как вы обрабатываете мастер-значение (значение, которое вы возвращаете как доступное только для чтения) и чего вы хотите достичь с его помощью (извините, мне не так ясно в предоставленном примере , который не соответствует 100% заголовку вашей темы)