#include 和 #import 有相同的效果,只不过#import 能确保头文件只被导入一次,不会引起重复导入。#import能把头文件的所有信息都获取到,包含这个类的变量和方法。而@class只是会告诉编译器,其后声明的名称是类的名称,至于这些类是如何定义的却完全不知道,因此,即使你在头文件中使用了@class,还是需要在声明文件.m中导入头文件的。
注意:@class 的使用时为了防止头文件之间互相导入(交叉导入);
时间: 2024-10-09 14:27:29
#include 和 #import 有相同的效果,只不过#import 能确保头文件只被导入一次,不会引起重复导入。#import能把头文件的所有信息都获取到,包含这个类的变量和方法。而@class只是会告诉编译器,其后声明的名称是类的名称,至于这些类是如何定义的却完全不知道,因此,即使你在头文件中使用了@class,还是需要在声明文件.m中导入头文件的。
注意:@class 的使用时为了防止头文件之间互相导入(交叉导入);