Цель C - Где вы определяете глобальные статические переменные?

Или, что противоположно инициализации + (void)?

Вот моя ситуация:

У меня есть класс Unit, чья функция (ID) initWithName: принимает данные из глобального NSDictionary, который создается лениво, определенный в файле Unit.m, как:

static NSMutableDictionary * unitLibrary = nil;

Где я могу вызвать [releaseLibrary]?

Ответ 1

Вы можете позвонить ему в том месте, где вы знаете, что словарь больше не нужен. Если это необходимо на протяжении всего жизненного цикла приложения, вам не нужно ничего делать, поскольку все воспоминания будут восстановлены ОС при завершении приложения.

Ответ 2

Нет ответа общего назначения. Вы должны освободить его, если вы уверены, что он больше не будет использоваться. Возможные кандидаты могут находиться в сообщении делегата applicationWillTerminate или через функцию atexit().