@interface, @implementaion разделы. Когда использовать против не использовать?
Итак, я новичок, учусь программировать в Objective-C. Я понимаю концепции разделов @interface и @implementation и почему они там есть. Но в книге, которую я использую, будут другие примеры, в которых она просто переходит прямо к @autoreleasepool, который мне проще понять концептуально.
Мне определенно не хватает ключевой концепции этих двух разделов (@interface и @implementation). Может кто-нибудь помочь мне понять, когда вам нужно использовать эти разделы для определения переменных экземпляра и их методов, а не вводить эту информацию в @autoreleasepool?
Что я здесь не понимаю?
Большое спасибо.
2 ответа
@interface
а также @implementation
против @autoreleasepool
используются в совершенно разных контекстах. Как вы, наверное, уже узнали, @interface
объявляет класс, в то время как @implementation
очевидно, содержит реализацию всех методов. @autoreleasepool
используется для инкапсуляции блока кода и проверки того, что любые объекты, автоматически высвобождаемые в этом блоке, освобождаются в конце @autoreleasepool
блок. Очень редко вам нужно создавать свои собственные @autoreleasepool
блоки. В большинстве случаев для вас уже создан один пул.
@interface в основном используется для объявления открытых функций и переменных
@implenation используется для закрытых методов и функций (хотя в Objective C все переменные и функции-члены являются открытыми)