//@class只是为了声明B是一个类 当两个类相互包含的时候#import是做不到的
//一般在.h文件中用@class声明一个类成员在..m文件中具体用到时才用#import应用
//二者区别: @class 只是为了声明一个类 而#import "" 是完全拷贝代码 ;@class比#import ""效率高。
//如果是继承某个类一定要用#import
a.h
// // A.h // MemoryManagement // // Created by WildCat on 13-7-24. // Copyright (c) 2013年 wildcat. All rights reserved. // #import <Foundation/Foundation.h> //@class只是为了声明B是一个类 当两个类相互包含的时候#import是做不到的 //一般在.h文件中用@class声明一个类成员 在..m文件中具体用到时才用#import应用 //二者区别: @class 只是为了声明一个类 而#import "" 是完全拷贝代码 ;@class比#import ""效率高。 //如果是继承某个类一定要用#import @class B; @interface A : NSObject @property B *b; @end
b.h
// B.h // MemoryManagement // // Created by WildCat on 13-7-24. // Copyright (c) 2013年 wildcat. All rights reserved. // #import <Foundation/Foundation.h> @class A; @interface B : NSObject @property A *a; @end