#ifdef __OBJC__在做什么,为什么下面列出了库?

5lb*_*ass 5 import objective-c conditional-compilation ios4 ios

我相信该#ifdef __OBJC__指令可确保我仅为Objective-C导入以下类库。在ifdef语句之后列出类库的目的是什么?这个代码示例不是要达到目的吗?

#ifdef __OBJC__
#import <foundation/foundation.h>
#import <uikit/uikit.h>
#import <coredata/coredata.h>
#endif
</coredata/coredata.h></uikit/uikit.h></foundation/foundation.h>
Run Code Online (Sandbox Code Playgroud)

Osc*_*mez 0

基本上在该代码中,如果您使用的是 Objective C,它将导入这 3 个库

#import <foundation/foundation.h>
#import <uikit/uikit.h>
#import <coredata/coredata.h>
Run Code Online (Sandbox Code Playgroud)

if 的目的是除非有必要否则不导入它们。