文件接口和多源代码编译
文件接口
银行有不同窗口提供服务,收费站有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等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。