面试题15:请指出const与#define相比有何优点
答:const的作用为定义常量、修饰函数参数及修饰函数返回值3个作用。被const修饰的内容都会受到强制保护,可以预防意外的变动,能提高程序的安全性。
(1)const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换中可能会出现意料不到的错误。
(2)有些集成化的调试工具可以对const常量进行调试,但是不能对宏常量进行调试。
面试题15:请指出const与#define相比有何优点
答:const的作用为定义常量、修饰函数参数及修饰函数返回值3个作用。被const修饰的内容都会受到强制保护,可以预防意外的变动,能提高程序的安全性。
(1)const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换中可能会出现意料不到的错误。
(2)有些集成化的调试工具可以对const常量进行调试,但是不能对宏常量进行调试。
本文档使用 Sou.st 构建