Я ломал голову над этим уже несколько дней.Я все еще пытаюсь обернуть голову вокруг управления памятью в target-c.
Вот мой фрагмент (сжатый для ясности):
- (void)performOperation:(NSString *)operation
{
if ([@"+" isEqual:operation])
{
waitingOperation = operation;
}
else if ([@"C" isEqual:operation])
{
waitingOperation = nil;
}
}
waitOperation - просто локальная частная NSString (no @property, no @synthesize, no getters / setters).
Разве я не должен иметь утечку памяти, когда присваиваю waitOperation nil, когда он в данный момент указывает на строку NSString в куче?Мой вызов этого метода в приложении ios, которое передает NSString из UILabel display.text.Я профилировал этот код с помощью инструментов и никогда не видел утечек.Я был бы очень признателен за некоторую ясность в этом.Заранее спасибо.