嵌入式软件设计之:.h头文件设计原则

       对于C语言开发的嵌入式软件来说,最终的开发成果是以.c、.h文件形式体现的,由众多的.c、.h文件组成了所谓的源代码。.h构筑的头文件不单单起着对外开放接口,允许不同模块间相互调用的作用,更重要的是头文件的定义体现了软件系统的设计布局,层次结构,功能划分和系统架构思想,对于整个系统都起着至关重要的作用。

        不合理的头文件设计体现了不合理的软件设计,不仅造成编译时间过长,也使得模块之前耦合性增强,降低可移植性和可维护性。

一些良好的头文件设计原则如下:

1.头文件中应减少对其他头文件的引用

除非必要,尽量不要在头文件中引用其他头文件,因为头文件的包含关系会传递,如果一个A文件引用了a.h头文件,a.h文件中又引用了b.h头文件,相当于A文件也引用了b.h,所有引用a.h的地方都间接的引用了b.h文件,那么b.h的修改反过来就会使所有直接或间接引用b.h的地方都要重新编译,编译时间会大幅上升。

2.避免头文件递归包含

要避免 a.h 包含b.h,b.h包含c.h,c.h又包含a.h这种循环包含的情况发生。如果遇到此种情况说明a.h、b.h、c.h 功能划分上已经不合理了。

3.头文件中只放置要对外部开放的声明和定义

头文件是一个功能模块的对外接口,供其他模块调用或使用的函数声明、宏定义、结构体定义、枚举量、类型定义等进行放置,外部模块使用不到的,只有内部才用的不应放置到头文件中。

变量的定义要在.c文件中进行,不要放到.h文件中,可以通过函数接口的形式开放给外部。如果必须要对外提供全局量,也是在.c中定义全局量,.h中仅作声明。

从外部

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值