C++中使用宏需要注意的规范

本文介绍了在C++中使用宏定义时应注意的规范,包括使用完备括号避免字符替换错误,避免参数发生变化导致的副作用,以及使用大括号确保多条表达式正确执行。这些规范能帮助开发者更安全地使用宏。
摘要由CSDN通过智能技术生成

使用宏需要注意的规范

1. 用宏定义表达式时,要使用完备的括号

如:

#define RECTANGLE_AREA( a, b ) (a) * (b)
#define RECTANGLE_AREA( a, b ) ((a) * (b))

主要原因就是由于宏替换的时候只是简单的字符替换, 如果我们不使用完备的括号, 那么很有可能或造成结果和我们想要得到的表达式不同.

2. 使用宏时,不允许参数发生变化

在某种程度上带参的宏定义与函数有几分类似。但是必须注意它们的区别,正如下面代码片段所示:

#define SQUARE( a ) ((a) * (a))  
int Square(int a)  
{  
     return a*a;  
}  

int nValue1 = 10, nValue2 = 10;  
int
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值