const 与 #define 的比较

C++ 语言可以用const 来定义常量,也可以用 #define 来定义常量。但是前者比后
者有更多的优点:
(1) const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安
全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会
产生意料不到的错误(边际效应)。
(2) 有些集成化的调试工具可以对 const 常量进行调试,但是不能对宏常量进行调
试。
z 【规则5-2-1】在C++ 程序中只使用const 常量而不使用宏常量,即const 常量完
全取代宏常量。

你可能感兴趣的:(C++,c,C#)