Я пытаюсь понять, что говорит мне инструмент Allocations в Xcode. Я использую ARC. У меня есть следующие методы в DetailViewController моего мастер-деталь приложения:Почему эта функция вызывает утечку?
- (FFMasterViewController*) masterViewController
{
return (FFMasterViewController*)[[self.splitViewController.viewControllers objectAtIndex:0] topViewController];
}
- (SQLDataController*) sqlDataController
{
return self.masterViewController.dataController;
}
Первый метод, кажется, хорошо. Но второй, согласно Allocations, вызывает 100,0% утечки памяти. dataController - это ivar в моем MasterViewController. Я написал оба метода, чтобы было удобно обращаться к MasterViewController и DataController из методов в моем DetailViewController. Я могу показать больше кода, но я не уверен, что посмотреть дальше, чтобы найти утечку. Я не понимаю, как вернуть указатель в одном случае, но в другом случае возникает утечка.
Возможно, мне нужно добавить, что как masterViewController, так и sqlDataController определены как свойства только для чтения в моем DetailViewController. Я показываю методы доступа для каждого из этих свойств. –
Можете ли вы показать объявления свойств для 'masterViewController' и' dataController'? –
@property (readonly, nonatomic) FFMasterViewController * masterViewController; –