一、定义
1.在文件开头定义宏
#define 宏名 宏值
2.在某头文件里定义宏,然后在文件头部 #include "定义宏的头文件.h"
例如,在version.h里写上:
#define UOS_CMBC 1 //0:标准版本 1:民生银行UOS版本
然后在其他.h或.cpp文件头部写上
#include "version.h"
二、使用
1.是或否
#if 宏 //或者#if !宏
内容
#endif
2.二选一
#ifdef 宏 //注意,二选一不能出现 #ifdef !宏
内容1
#else
内容2
#endif
举例:需要跨平台的代码,需要区分Windows和Linux操作系统(区分操作系统的宏不需要自己定义,系统可直接识别)
1.区分操作系统的宏命令
Windows的宏是WIN32
,注意三个字母都要大写,否则无法识别。
#ifdef WIN32
Windows代码
#else
Unix/Linux代码
#endif
2.防止头文件重复包含的宏命令(对于.h文件)
以LogWidget.h为例
方法1:3行搞定,是通用的宏
#ifdef LogWidget_H
#define LogWidget_H
内容
#endif
方法2: 1行搞定,但不通用,仅限某些
#pragma once
内容