Простой вопрос - нужно ли мне освобождать или освобождать структуры. Я спрашиваю, что я использую NSInvocation, а тип SEL - это структура. Просто хочу знать, нужно ли мне это выпустить. Спасибо.
В Objective-C и C в целом, если что-то не является указателем на другое место в памяти и все это размещено в стеке, вам не нужно его освобождать. Он освободится, как только указатель стека будет настроен в конце функции.
SEL следует рассматривать как непрозрачный тип (это char * в 32-разрядной среде выполнения), и почти каждое использование будет статическим экземпляром (@selector()) или «временной» переменной (NSSelectorFromString()) ни один из которых не нуждается в освобождении, потому что вы его не выделили.
SEL
char *
@selector()
NSSelectorFromString()
Что касается структур C и управления памятью, Objective-C ничем не отличается от C: если вы malloc() это, вам следует free() это (в какой-то момент).
malloc()
free()