- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深入理解Objective-c中class的含义
深入理解Objective-c中@class的含义在objective-c中,经常会遇到一个类使用另一个类,并且在类的头文件中需要创建被引用类的指针。如下面的代码:A.h文件其中,A类是引用类,B类是被引用类,在这暂不考虑的实现文件。通常引用一个类有两种方法:一种是通过#import方式引入;另一种是 通过@class方式引入。这两种方式的区别在于:1、#import方式会包含被引用类的所有信息,包括被引用类的变量和方法;而@class方式只是告诉编译器在A.h文件中B *b只是类的声明,具体这个类里面有什么信息,这里不需要知道,等实现文件中真正要用到时,才会真正的去查看B类中的信息;2、使用@class方式由于只需要被引用类(B类)的名称就可以了,而在实现类中由于要用到被引用类中的实体变量和方法,所以需要使用#import来包含被引用类的头文件;3、通过上面两点好我们也很容易知道这个两个方式在编译效率上的差异,如果有上百个文件都#import了同一个文件,或者这些文件依次被#import(A-B,B-C,C-D...),一旦最开始的头文件稍有改动,后面引用到这个文件的所有类都需要重新编译一遍,,而相对来讲,使用@class方式就不会出现这种问题了;4、对于循环依赖关系来说,比如A类引用B类,让同时B类也引用A类,B类代码:B.h文件当系统运行时,编译会报错:当使用@class在两个类中相互声明就不会出现编译报错。结论:由上可知,@class是放在interface中,只是在引用一个类,将这个被引用类作为一个类型;在实现文件中,如果需要引用到被引用类的实体变量或者方法时,还需要使用#import方式引入被引用类。如:举个例子说明一下:在ClassA.h中#import ClassB.h 相当于#include整个.h头文件。如果有很多.m文件#import ClassA.h,那么编译的时候这些文件也会#import ClassB.h 增加了没必要的#import,浪费了编译时间。在大兴软件项目中,减少.h文件中的#include是非常重要的。如果只是ClassB那就没有#include ClassB.h ,仅需要在需要用到的ClassB的.m文件中#import ClassB.h。那么什么时候可以用呢?如果ClassA.h中仅需要声明一个ClassB的指针,那么就可以在ClassA.h中声明:@classB...ClassB *pointer;所以,一般来说,@class是放在interface中的,只是为了在interface中引用这个类,把这个类作为一个类型来用的。在实现这个借口的实现类中,如果需要引用这个类的实体变量或者方法之类的,还是需要#import在@class中声明的类进来。
您可能关注的文档
- 河北省衡水中学2015届高三下学期三调考试语文试题及答案.doc
- 河北省衡水中学2014-2015学年高三下学期一调考试数学(理)试题版含答案.doc
- 河南省专业技术人员继续教育自测试题3.doc
- 河北省衡水中学2016届高三下学期同步原创月考卷数学(理)试卷(版).doc
- 油价将跌至30美元我可以给你一万个理由.docx
- 法律逻辑学作业二1.doc
- 法理学总复习资料.doc
- 法理学法的概念和本质.doc
- 泰州市2016年中考语文试卷.doc
- 注册咨询工程师考试PPP政策解析及制度建设116分.docx
- 专题04 天气与气候(期末真题汇编,广东专用)(解析版).docx
- 专题04 中国的经济发展(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(解析版).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(解析版).docx
- 2024年下半年教师资格考试中学《教育知识与能力》真题(含答案和解析).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(解析版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(原卷版).docx
- 统编版七年级语文上册课件《雨的四季》.pptx
最近下载
- 超星网课《西方美术欣赏》超星尔雅答案2023章节测验答案.doc VIP
- 《土力学》期末考试模拟试卷二及答案.pdf VIP
- 初中书法校本教材七年级.pdf VIP
- 2025风力发电机组出质保期验收管理办法.docx VIP
- 2025年全国“安全生产活动月”《安全知识》竞赛题库(+答案).docx VIP
- 中石化(天津)石油化工有限公司炼油提质改造项目环境影响报告书.pdf VIP
- 柴油MSDS化学品安全技术说明书 完整版完整版724528759.pdf VIP
- ASNT SNT-TC-1A-2024 无损检测人员资格鉴定与认证 中文版.pdf
- 土力学期末考试试卷及答案__5_.doc VIP
- 土建(含钢结构)工程施工组织设计.docx VIP
有哪些信誉好的足球投注网站
文档评论(0)