#import負責導入程序所需的文件的信息導入到程序中,隨着程序所需的文件越來越多,程序就要導入更多的文件,這就帶來了越來越長的編譯時間,而且有大量重復的。為了解決這個問題可以采用以下辦法解決,創建.pch文件,在該文件中加入以下代碼。
#ifdef __OBJC__ #import <Foundation/Foundation.h> #endif
此時仍然會導入Foundation框架,但是可以很大程度的加快編譯速度。但是這也會帶來一個新的問題,維護.pch文件是很低效的。
因此引入了 @import指令
@import Foundation;
這段代碼告訴編譯器需要使用Foundation框架,之后編譯器會優化預編譯頭文件和緩存編譯結果的過程。同時,文件中不用再明確引用框架--編譯器會根據@import自動導入相應框架。
需要注意的是該指令現階段還只能用於Apple提供的框架,如果導入的是自己的類或框架還是需要#import。