c头文件和源文件怎么写( 三 )


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

c头文件和源文件怎么写

文章插图