Что было бы хорошим способом гарантировать, что свойства моего объекта не будут преждевременно раскрыты.
Удерживая их, поддерживая сильную ссылку.Крайне маловероятно, что ARC случайно публикует ваши данные.Гораздо более вероятно, что вы отпускаете это, когда не хотите.
Первое, на что я бы обратил внимание, - это на использование setCurrentGame:
, чтобы убедиться, что вы не работаете случайно.на разных Game
объектах одновременно в разных частях программы.Во-первых, убедитесь, что t
ваши +get...
методы названы неуклюже (префикс get
означает очень специфическую вещь в ObjC, и это не то, что вы здесь делаете).Вероятно, возникнут проблемы с наличием методов класса, которые используют цели и подобные действия.Это заставляет меня задуматься о том, что там происходит внутри.
Ваше преобразование между двумя типами User
объектов немного подозрительно, и я бы удостоверился, что вы случайно не отбрасываете объекты User или PFUser, когда делаете это.не имею в виду.
Вообще говоря, этот вопрос слишком расплывчат.Вы заводите с висячими сильными указателями?Кажется, твои сильные указатели стали nil
?Ваш игровой объект сам по себе становится nil
?Как вы знаете, когда вещи "выпущены"?Или вы имеете в виду, что они освобождают?Вы поставили точку останова в dealloc
, чтобы увидеть, кто имел последнюю ссылку на объект?