在Objective-C中,指令

[objc] @class XYPoint; [/objc]

[objc] #import "XYPoint.h" [/objc]

作用是一样的。

但是使用@class指令提高了效率,因为编译器不需要处理整个XYPoint.h文件(虽然它很小);而只需要知道XYPoint是一个类的名字。如果需要引用XYPoint类中的方法,@class指令是不够的,因为编译器需要更多消息。它需要知道该方法中有多少参数、它们是什么类型、方法的返回类型是什么。这时候就需要使用#import了。