error expected specifIEr-qualifIEr-List before 'someClass'
将#import“someClass.h”从.h文件移动到.m文件中.这也解决了我遇到的其他一些与标题相关的问题(从我的观点来看神秘).
一些粗略的谷歌搜索已经找到答案“永远不会导入头文件中的标题”,这是建议停止的地方.
要么我完全做了这件事,要么我已经从某个地方养成了习惯,但我认为标题是要导入标题的地方.显然不是,但任何人都可以向我解释为什么会这样,以及导入标题的首选方式是什么?
解决方法 除非您继承自您所包含的类,否则不应在标题中包含标题.如果需要将对象包含为接口变量,则应使用@class指令;这将告诉编译器标识符引用一个类.而是仅在实现文件中导入标头.编译器将知道您的实例变量是指向对象的指针,但在解析标头时它不知道对象的详细信息.它需要知道的是它是一个类.然后,编译器可以在解析实现文件时查看类的方法;此时,它确实需要该类,以验证它是否响应您发送的消息.
更新:我打算更新我的回答,以回应一些后来的问题,但是Rob Napier has a good follow-up.
总结以上是内存溢出为你收集整理的objective-c – Cocoa:在头文件中导入和在主文件中导入之间有什么区别?全部内容,希望文章能够帮你解决objective-c – Cocoa:在头文件中导入和在主文件中导入之间有什么区别?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)