Насколько я знаю, когда я разыгрываю мертвую слабую ссылку в Objective-C, в результате получается значение nil
. Мне интересно, есть ли способ сказать, существует ли значение - слабое значение, присвоенное переменной, когда оно уходит, вместо того, чтобы просто иметь значение nil
(например, если ссылка никогда не назначалась).Дифференцировать мертвую слабую ссылку по сравнению с нулевым значением
Возможно, есть функция выполнения на нижнем уровне, которую я могу использовать?
Я взялся использовать BOOL
для записи, когда ссылка назначена, но это кажется мне уродливым.
Насколько я знаю, нет. Обратите внимание, что вы действительно не разыгрываете слабую ссылку. Когда объект освобождается, сама эта ссылка равна nil'd; это не вопрос бухгалтерского учета «эта ссылка все еще действительна или нет?» –