可能重複的關鍵字:
@class vs. #import類和接口的頭文件使用Objective-C
我是新來的Objective-C,我已經看到了一個例子看喜歡:
#import <UIKit/UIKit.h>
@class MapKitSampleViewController;
@interface MapKitSampleAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
MapKitSampleViewController *viewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet MapKitSampleViewController *viewController;
@end
上面的代碼存儲在「MapKitSampleAppDelegate.h」文件中,我想問一下lin是什麼意思e 3「@class MapKitSampleViewController;」?我們可以將其更改爲#import「MapKitSampleViewController.h」嗎?
+1還可以注意到,這與C++中的前向聲明和#include一樣。 – jv42
是的,#import「MapKitSampleViewController.h」在.m文件中。那麼,是否有必要在.h文件中寫入@class XXX? –
@Charles Yeung它沒有必要(因爲它會編譯得很好),但推薦它是防止我描述的問題的良好實踐。 –