搜索
bottom↓
回复: 11

这个 app_cfg.h 文件有什么益处?

[复制链接]

出0入0汤圆

发表于 2016-4-19 16:18:17 | 显示全部楼层 |阅读模式
那位仁兄解释一下app_cfg.h  有什么好处,xxxx.c  和 xxxx.h  不就可以实现 模块化和封装化了吗?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2016-4-19 16:24:04 | 显示全部楼层
专门用于模块的设置,区分开头文件的接口

出0入4汤圆

发表于 2016-4-19 17:49:15 | 显示全部楼层
os与app分离。

出0入0汤圆

发表于 2016-4-19 23:52:44 | 显示全部楼层
方便性号

出0入0汤圆

 楼主| 发表于 2016-4-20 19:38:30 | 显示全部楼层
那就是  不用都无所谓的罗!

出0入0汤圆

发表于 2016-4-27 09:32:24 | 显示全部楼层
区分输入.h和输出.h

出0入296汤圆

发表于 2016-4-28 20:53:24 | 显示全部楼层
人为的将头文件分成两类,一种用于从外界(模块外部)输入配置信息,叫做 app_cfg.h
另外一类专门用于从模块内向模块外输出接口信息(函数啊,类型定义啊,宏啊,最好别
放全局变量),这种头文件叫接口头文件,一般和模块同名,xxxxx.h的由来。

为什么要分开呢?因为混在一起很容易出现循环包含。分开以后层次和逻辑都很清晰,而
且可以做大规模的模块化。app_cfg.h像一个基础设施,每一个模块都有,并且都自动包含
上一级模块的 app_cfg.h,这样顶层的配置信息就可以简单的传递到下面的各级模块,同时
坚持使用相对路径,避免代码移植时候的不必要的工程设定。

出0入0汤圆

 楼主| 发表于 2016-5-4 20:00:49 | 显示全部楼层
Gorgon_Meducer 发表于 2016-4-28 20:53
人为的将头文件分成两类,一种用于从外界(模块外部)输入配置信息,叫做 app_cfg.h
另外一类专门用于从模 ...

恍然大悟,以前就是想怎么解决这样的问题,就是不知道有什么办法,原来如此。
还是大师解答明了。学到了。。。

出0入0汤圆

发表于 2016-12-20 11:04:11 | 显示全部楼层
老师解释之后,让新人少走不少弯路

出0入0汤圆

发表于 2017-7-19 11:31:15 | 显示全部楼层
Gorgon_Meducer 发表于 2016-4-28 20:53
人为的将头文件分成两类,一种用于从外界(模块外部)输入配置信息,叫做 app_cfg.h
另外一类专门用于从模 ...

大师有一个疑问,请教一下。你说的当前模块都有一个app_cfg.h用来引入外部模块配置信息,我下载了KEY模块与消息地图模块看了一下,它们的各模块里面的app_cfg.h里面的内容只有包含上一级的app_cfg.h,并没有包含其它的头文件。其它的的模块的头文件都是在***.C里面单独include的,这个是故意这样写的吗?能不能把其它模块的头文件,写在当前模块的app_cfg.h中呢?

出0入296汤圆

发表于 2017-7-19 16:18:22 | 显示全部楼层
cgbabc 发表于 2017-7-19 11:31
大师有一个疑问,请教一下。你说的当前模块都有一个app_cfg.h用来引入外部模块配置信息,我下载了KEY模块 ...

不能!.c 要用谁,自己直接include。因为当前模块的app_cfg.h要被当前模块的接口头文件包含的。
这样的话,实际上,在模块的使用者那里可能会出现“短路”。

出0入0汤圆

发表于 2017-7-19 16:26:45 | 显示全部楼层
本帖最后由 cgbabc 于 2017-7-19 16:31 编辑
Gorgon_Meducer 发表于 2017-7-19 16:18
不能!.c 要用谁,自己直接include。因为当前模块的app_cfg.h要被当前模块的接口头文件包含的。
这样的话 ...


明白了,谢谢回复!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-17 21:11

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表