当我尝试创建2类我自己的简单类(类名为Car)时,我遇到了问题。我为这个课程创建了2个类别,仅用于测试"汽车+ show.h" &安培; "汽车+ Protected.h&#34 ;.我只是写一些非常小的方法,像NSLog一样刺痛。
我的问题是,当我构建应用程序时,我将错误输入分类文件"无法为未定义的Class Car"定义类别。请告诉我我错在哪里。
答案 0 :(得分:15)
如果您将类别标题文件导入Car.h
,并且您的类别标题文件本身导入Car.h
,那么您会遇到导致您出现问题的circular import。
类别用于向类添加功能或将接口拆分为多个标头。如果要将类别标题导入主类标题,这就失败了。
类别标题只应包含在需要使用类别中定义的功能的文件中。
答案 1 :(得分:0)
我偶然解决了运气问题。我真的不知道这个事实。 关键是当我将类别文件导入Car.h文件时,它会创建我与您共享的错误。但是当我只导入同一个文件而且只导入Car.m文件时它工作正常。
当我将类别文件导入.h文件时,我真的不知道为什么会出现错误。请解释为什么会出错?
感谢Mukesh