本文共 766 字,大约阅读时间需要 2 分钟。
c++语言可以用const定义常量,也可以用#define定义常量,但是前者比后者有更多的优点:
(1)const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换中可能会产生意料不到的错误(边际效应)。 (2)有些集成化的调试工具可以对const常量进行高度,但是不能对宏常量进行调试。建议在C++程序中只使用const常量而不使用宏常量,即const常量完全取代宏常量。说明:
常量的引进是在早期的C++版本中,当时标准C规范正在制订。那时,常量被看做一个好的思想而被包含在C中。但是,C中的const的意思是“一个不能被改变的普通变量”。在C中,它占用内存,而且它的名字是全局符。C编译器不能把const看成一个编译期间的常量。在C中,如果写: const转载地址:http://djpci.baihongyu.com/