const和#define的区别
(1)const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行
类型安全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替
换可能会产生意料不到的错误。
(2)有些集成化的调试工具可以对 const 常量进行调试,但是不能对宏常量进行调试。
为无为,事无事 / 天下难事,必作于易
(1)const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行
类型安全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替
换可能会产生意料不到的错误。
(2)有些集成化的调试工具可以对 const 常量进行调试,但是不能对宏常量进行调试。