Почему в шаблонах Xcode есть #imports, которые дублируют Prefix.pch?

При изучении программирования для iPhone каждый шаблон Xcode, который я видел, включает файл AppName-Prefix.pch со следующим содержанием:

#ifdef __OBJC__
    #import <Foundation/Foundation.h>
    #import <UIKit/UIKit.h>
#endif

Насколько я понимаю заключается в том, что перед компиляцией к содержимому этого файла добавляется префикс каждого файла исходного кода. Тем не менее, каждый из других файлов также импортирует UIKit, что кажется излишним. Например, main.m начинается ...

#import <UIKit/UIKit.h>

int main(int argc, char *argv[]) {
...

Какао-приложения в Mac OS X делают то же самое, импортируя Cocoa.h как в файл префикса, так и в файлы заголовков.

Почему оба ? Я удалил директивы #import из всех исходных файлов, кроме файла префикса, и он скомпилировался и работал правильно.

17
задан ma11hew28 11 August 2011 в 14:51
поделиться