#ifdef __OBJC__ 宏定义的作用

今天碰到一个问题:C OC C++文件在项目中混编时

1、出现could not build module foundation错误

2、NSObjCRuntime.h  NSObject.h  NSZone.h 将会报出编译异常。

解决:

项目pch文件中,#import的头文件做如下操作 

// 表示宏内引用的文件确保只被使用 Objective-C 语言的文件所引用,保证引用关系的清晰

 #ifdef __OBJC__ 

  #import 

 #endif
原文地址:https://www.cnblogs.com/zhangyang17/p/14341846.html