const的作用:定义常量、修饰函数参数、修饰函数返回值三个作用。被const修饰的东西受到强制保护,可以预防意外的变动,提高程序的健壮性。

  • const常量有数据类型,而宏常量没有数据类型,编译器可以对前者进行类型安全检查,而后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不到的错误。
  • 有些集成化的调试工具可以对const常量进行测试,但不能对宏常量进行测试。