1. #import導入頭文件,即:導入頭文件中的內容到當前類 2. #import “”導⼊自定義類,#import <>導入類庫中的頭文件。 3.功能類似C語言中的#include,但是可以避免頭文件被重覆導 入。(也即可以自動避免) 4. 容易出現迴圈導入頭文件問題。 針對上面4的迴圈導入頭文 ...
1. #import導入頭文件,即:導入頭文件中的內容到當前類
2. #import “”導⼊自定義類,#import <>導入類庫中的頭文件。
3.功能類似C語言中的#include,但是可以避免頭文件被重覆導 入。(也即可以自動避免)
4. 容易出現迴圈導入頭文件問題。
針對上面4的迴圈導入頭文件而出現的死迴圈,OC中用@class + 類來解決
@class A;//不會執行導入,只是聲明瞭會用到A類,然後用到A類時會去A類中尋找
// #import和#include相比,#import可以避免重覆導入
// #import 可能會造成迴圈編譯,@class可以解決這個問題,@class A:只是將A聲明成一個類
// 編譯器不會導入A的內容
// 在使用@class的時候,一定要在.m中引入對應的頭文件,例如:@class A;要在對應的.m文件
// 中寫:#import “A.h”
@interface B : NSObject
{
A * _a;
}
@end
================================== B.m中內容:#import "B.h"
#import"A.h" //這裡重點:這是在.m中導入的類,而死迴圈是因為都是在.h中導入,造成編譯時
//的死迴圈
@implementationB
@end