C++中为什么说const限定符比#define好呢,#define是查找修改,而const已经将值定义死了不可修改。
发布网友
发布时间:2022-04-29 12:12
我来回答
共2个回答
热心网友
时间:2023-10-05 17:06
相对于const限定符,宏定义有如下缺点:
宏是简单的文本替换,在预处理阶段时完成,运行报错时直接报相应的值;跟踪调试时也是显示值,而不是宏名;宏没有类型检查,不安全;宏没有作用域。
所以说,const限定符比#define好。
热心网友
时间:2023-10-05 17:06
1,const 进行类型检查 const定义常量是有数据类型的
2. const支持一些编译器的断点调试
define只进行字符替换,如果宏定义的不好,
字符替换中可能会产生意料不到的错误