您的位置:首页 > 编程语言 > C语言/C++

[C++再学习系列] 避免使用宏

2009-07-11 17:02 190 查看
避免使用宏

宏是一种文本替换设施
,宏替换发生在编译器的预处理阶段,此时
C++
的语法和语义规则并未去作用,无法对宏的进行任何检查,这将为后续生成代码的编译埋下隐患。此外。宏语法仅能理解小括号和方括号
,并不识别
template
的方括号
<>
。举例:

MACRO( Foo<int,
double> )

虽然
Foo<int, double>
是一个
C++
实体,但是上面的宏将解读为传入
Foo<int

double>
两个参数。

C++
中用于取代宏的语法:

常数
----
使用
const

enum


函数展开
---inline
内联函数

名称冲突
----namespace

通用函数
----template
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: