ios中头文件交叉导入问题

ios中头文件交叉导入问题
比如类man中#import “woman.h”
类woman中#import “man.h”
解决方法:
把类woman中#import “man.h”删除,换成@class man;
然后再woman的.m文件中加上#import “man.h”即可
原理(一楼大神给评论的,给大神一个赞):
@class name 只是告诉别人有这么一个name类,而当用到这个name类的属性方法时,就要在自身的.m文件中重新引入name类的头文件,
@class name 这种做法一般是在组合类之间互相使用的时候,防止#impot这种方式重复导入头文件二出现错误的问题,因为#import 这种方式导入头文件实质上相当于把导入的那个类的头文件里面的东西全部复制一遍,而相互导入导致循环复制,所以出现了错误。

你可能感兴趣的:(ios学习)