Прежде всего, если booleanVar - просто простое значение BOOL
, как оно объявлено следующим образом:
BOOL booleanVar;
, тогда вам не нужно освобождать какую-либо память, связанную с ним, так какэта память выделяется и освобождается, когда класс, который ее содержит, выделяется и освобождается.Так что никакой код для booleanVar в dealloc не подойдет.
Однако, если вы говорите о указателе для BOOL
, определенном так:
BOOL *booleanVar;
и то, что вы хотите, эточтобы установить эту переменную в ненулевое значение, вы должны установить ее равной NULL
вместо nil
, поскольку NULL
для указателей значений и nil
для указателей объектов (см .: NULL vs nilв Objective-C ).
Однако, если вы хотите освободить память, на которую указывает указатель BOOL
, выделенный с помощью malloc
или realloc
и т. д., попробуйтефункция free()
C (см .: http://www.cplusplus.com/reference/clibrary/cstdlib/free/).
Что действительно прояснит все это, если вы покажете нам объявление свойства для booleanVar в интерфейсе класса, которое точно скажет нам, что вы хотите сделатьи вы получите ответ с полной уверенностью.