加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在Objective-C中包含头文件的成本

发布时间:2020-12-16 03:44:10 所属栏目:百科 来源:网络整理
导读:这似乎是一个非常愚蠢的问题,但是在Objective-C中包含(实际上是调用#import)头文件的成本是多少?我厌倦了在不同地点不断地包含相同的标题,所以我决定简单地创建一个包含几个常用引用标题的GlobalReferences.h文件. 如果没有使用其他文件,是否有可观的成本?
这似乎是一个非常愚蠢的问题,但是在Objective-C中包含(实际上是调用#import)头文件的成本是多少?我厌倦了在不同地点不断地包含相同的标题,所以我决定简单地创建一个包含几个常用引用标题的GlobalReferences.h文件.

如果没有使用其他文件,是否有可观的成本?我的直觉告诉我“不”,因为在使用#import时,链接器似乎知道其他文件,但是我不知道如果需要特别注意iPhone开发,这是我的项目所关心的.有什么想法吗?

解决方法

链接器对#imported文件一无所知.事实上,Objective-C编译器对它们也不了解,它们由预处理器进行预处理.预处理器有效地将头文件的内容插入到源文件中.实际的Objective-C编译器就必须处理额外的函数原型和类接口定义,即使它们没有被使用.虽然这通常不是一项冗长的任务,但可以增加编译时间.您应用程序的最终大小和性能应保持不受影响.

看看原始源代码的样子(包括所有头文件和扩展宏等):

gcc -E your-source-file.m

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读