const和#define的异同
在从语言中const和#define都可以用来定义常量,但const比#define有更多的优点:
(1)const定义的常量有数据类型,而#define没有数据类型;编译器可以对前者进行类型安全检查,而#define只能进行字符串的替换,没有类型安全的检查,而且在字符串替换时可能产生意料不到的错误。
(2)调试工具可以对const常量进行调试,但是不能对#define宏常量进行调试。在C++程序中只能使用const常量而不使用宏常量,即const常量完全取代宏常量。