7.C++中为什么要头文件和源文件分开写呢一般都是代表一个基本功能的源文件引用相应的头文件 。
一个 相关功能的模块可能有若干对源文件和头文件组成 。这是基于组件编程的核心 。
在我看来,他的好处是巨大的,是java不可比拟的,也是不可复制的:
c语言中头文件中一般定义了函数的声明、结构体的定义、宏定义 。(常量和全局变量最好放到源文件中)
1) 从业务扩展性上看:头文件中放函数的声明,函数由源文件实现,这就是将面向接口编程:接口和实现分开,这在面对业务变更频繁的需求中技术实现的好处是显而易见的--只要定义出良好地、扩展性高的接口,实现是可以很方便的更换 。
2) 从程序架构上看:代码在在大型程序中 需要分成不同的模块,单一模块中又可能分为不同的业务功能单元,他们间有很多相互的调用 。
头文件中的方法声明、结构体定义、宏就都可以充当这部分的模块与模块间、业务功能单位间的接口调用 。模块与模块间,功能单元与功能单元间都是面向接口的调用,耦合性低,这正是基于组件编程的核心思想 。
3) 从某些技术角度实现上看:头文件可通过宏定义来保证类定义、结构体定义、宏定义的唯一性 。确实很方便,不容易出错 。
在用makefile编译程序时,各个功能单元单独编译,构成中间文件.最终这些中间文件链接成可执行程序,在这些中间文件中重复引用同一头文件是不可避免的 。但如果头文件有保护性编程就可以很容易保证类、结构体、宏定义的唯一性 ----最终链接成可执行程序时,可执行程序中代码区中只会有唯一的类、结构体、宏的定义,其他都因为不满足唯一性保护失效 。这样的实现是不是很‘优雅’:)))? 我不知道你是否是这样认为,至于我,我是这样认为,haha~
【c头文件和源文件怎么写】
文章插图
- 硕士研究生和硕士的区别 硕士研究生和硕士学位一样吗
- 摆晃摆晃造句怎么写
- 邀请函开头怎么写
- 什么是坡度比和坡度系数 坡度系数与坡比
- 悠的组词 悠的组词和拼音
- 多点电喷和直喷有什么区别 直喷与多点电喷的区别
- mdf文件用什么打开 mdf文件用什么打开
- 迪丽热巴|没想到吧,迪丽热巴和段奕宏拍封面了,还别说,看起来很有感觉
- 氨基酸英文怎么写
- 呼啦圈的拼音怎么写