发新帖我要提问
12
返回列表
打印
[STM32F4]

关于头文件里面的宏定义的疑惑

[复制链接]
楼主: 摩天轮1111
手机看帖
扫描二维码
随时随地手机跟帖
21
zhuyjgh| | 2015-6-15 22:10 | 只看该作者 回帖奖励 |倒序浏览
#ifndef和#define后面的字符不一样的话,就等于白费力气哦,,重复引用的时候一样会报错的,,你的之所以没报错,,是因为没有多次引用哦,,

使用特权

评论回复
22
wowow| | 2015-6-16 09:16 | 只看该作者
fanxsd 发表于 2015-6-15 21:14
你不这样 调用 。h文件 不就在那 重复定义吗?

随着项目项目越来越复杂,头文件include的关系也会越来越复杂的。举个例子,做一个gui,有页面,有控件,页面包含控件,当然得include控件的头文件,控件要引用所在页面,也得包含页面的头文件。而应用部分必须将页面和控件的头文件都包含进来。项目做大了将程序模块化是好的开发方法,但模块与模块之间必然有着关联,也就必然有include。如果再加上C++的类就更复杂了。嵌入式系统驱动层用C,界面和应用用C++也是比较常见的。

分享自己用的一个头文本模板header_template.h,这是在c/c++混合编程时用的c头文件模板。新建头文件时,复制一份,改一下宏名再开始添加定义:

#ifndef _HEADER_TEMPLATE_H_
#define _HEADER_TEMPLATE_H_

///头文件模板

#ifdef __cplusplus
extern "C" {
#endif


#ifdef __cplusplus
}
#endif

#endif//_HEADER_TEMPLATE_H_

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则