你的位置:首页 > 操作系统

[操作系统]@import与#import的使用


  在xcode 5 下,为了更易于项目开发,增加了modules和 auto-linking 这两个新特性。用 @import 来增加框架项目中比用 #import会更有效.

  Modules and auto-linking 默认情况下是enabled的。 如果是旧的项目,你可以通过设置"Language - Modules." 来设置Enable Modules 和Link Frameworks Automatically 为Yes。

   另外一个使用moudules的好处是你再也不用去链接你的framework到你的项目了。例如,在以前,如果你要使用MapKit这个框架,你要这样做 1) 使用语句 #import <MapKit/MapKit.h> 导入框架2) 去到项目的build phases 设置项,找到MapKit.framework.并加入到Link Binary With Libraries里面。如果使用modules的话,只需要加入语句 "@import MapKit;" 你就可以开始使用了,根本不需要链接到你的项目。因此在ios 7或者更高版本下,使用@import代替#import,会让开发更加便捷。

 

附加:

  @class一般用于在头文件中声明该类的某个实例变量,在m文件中还是需要使用#import,导入对应的类。#import比起#include的好处就是不会引起交叉编译,在 Objective-C中,#import 被当成 #include 指令的改良版本来使用。除此之外,#import 确定一个文件只能被导入一次,这使项目开发人员在递归包含中不会出现问题。“ ”的意思是自己创建的文件,用这个首先会在当前的目录中寻找,如果找不到就到其他的位置寻找,“”和<>是相对的一个是自己创建的文件一个是系统的文件