文件接口和多源代码编译

createh52个月前 (03-14)技术教程12


文件接口


银行有不同窗口提供服务,收费站有ETC或人工,人类社会提供的接口形式,编程语言一样适用。


不同的文件接口形态

  • C/C++使用头文件.h提供对外接口。
  • 更高级的Java/C#按包为单位,用import或using引用包即可。可以不用C/C++用包含头文件的方式的根本原因在于,编译器处理了这个"类似的过程"。C++20引入了module, 概念上和Java/C#的包类似。不得不说,C++真是一门没上限的语言,它能积极引入如此多的新的有用的功能。


其他形式的导入

  • C/C++/ObjC文件包含带来不好的地方是,插入了整个头文件,如果有嵌套又会继续插入。这会增大编译器的负担。如果外部引用固定且不多,一种较好的方式是直接引入需要的结构或者类,比如ObjC用@class Point, C++用class Point.



多源代码编译


养第一个孩子没有经验,有过经验过,养第二个第三个,效仿第一个。一个项目包含多个源代码的编译和只有一个源代码是类似的。


基本原则

大部分编程语言的基本原则都是,每个源代码单独编译,最终做整合。当遇到"源代码"类型不同,比如有.c, 有.a, 编译器也会正确处理。

  • 千万不要把头文件.h当成编译单元,它仅仅是随嫁品。








若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是 程序员小迷 (致力于C、C++、C#、Android、iOS、Java、Kotlin、Objective-C、Swift、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

相关文章

iPhone越狱大神都是怎么进行破解的?头文件包含的干货

看似原始的做法,却是相当高效的引用方式。编程语言的头文件包含C/C++支持头文件包含。PHP还可将include语句置于条件语句中,include_once类似ObjC的#import可以保证不会重复...

苹果M1电脑真实编程测试之python篇-60个项目最全测试

苹果M1 mac电脑发售有一段时间,已经有多个性能测试软件对M1进行了测试,苹果M1跑分不俗。在geekbench上M1 Mac电脑甚至已经登顶Mac单核性能榜首。那么在真实的编程环境中,M1 mac...

苹果或在本周推出iOS 17.4.1更新 解决Bug和安全漏洞

【CNMO科技消息】3月18日,据外媒MacRumors报道,有消息人士透露,苹果最新的iOS 17.4.1和iPadOS 17.4.1应该在未来几天内发布,内部版本号为21E235。该媒体此前曾报道...

类一定有基类吗?如何修改根类?

不是所有的牛奶都叫特仑苏,也不是所有的类都有基类。类一定有基类?C++默认情况下不限定类一定有一个原始基类,C++这种处于C和纯面向对象的设计使得它格外有选择权。对于Smalltalk/ObjC/Ja...

推荐:本人使用频率最高的20款Mac软件(全)

子曰:“工欲善其事,必先利其器”。有个好的软件,才能让工作效率提升。作为一名使用了MAC电脑5年以上的的八零后技术人员,花了点时间精心整理了我使用频率比较高的几款MAC软件,强烈推荐给大家,仅供参考使...