C++宏定义#define

来源:互联网 发布:微信有淘宝接口 编辑:程序博客网 时间:2024/05/16 20:10

可以用#define命令将一个指定的标识符(即宏名)来代表一个字符串。定义宏的作用一般是用一个短的名字代表一个长的字符串。它的一般形式为:
#define 标识符 字符串
这就是已经介绍过的定义符号常量。如:
#define PI 3.1415926
还可以用#define命令定义带参数的宏定义。其定义的一般形式为:
#define 宏名(参数表) 字符串
如:
#define S(a, b) a*b  //定义宏S(矩形面积),a、b为宏的参数

使用的形式如下:
area=S(3, 2);
用3、2分别代替宏定义中的形式参数a和b,即用3*2代替S(3, 2)。因此赋值语句展开为:
area=3*2;
由于C++增加了内置函数(inline),比用带参数的宏定义更方便,因此在C++中基本上已不再用#define命令定义宏了,主要用于条件编译中。