const和#define的异同

在从语言中const和#define都可以用来定义常量,但const比#define有更多的优点:

  (1)const定义的常量有数据类型,而#define没有数据类型;编译器可以对前者进行类型安全检查,而#define只能进行字符串的替换,没有类型安全的检查,而且在字符串替换时可能产生意料不到的错误。

  (2)调试工具可以对const常量进行调试,但是不能对#define宏常量进行调试。在C++程序中只能使用const常量而不使用宏常量,即const常量完全取代宏常量。

posted @ 2011-06-03 21:06  要八戒更需悟空  阅读(174)  评论(0编辑  收藏  举报