c++的提出者当初是基于什么样的目的引入(或者说保留)const关键字呢?,这是一个有趣又有益的话题,对理解const很有帮助.
可发现许多,从而使得出错率大为减少,因此,也成为了c++与c相比,有着突出优点 【程序编程相关:数据仓库常见名词浅释】
1. 大家知道,c++有一个类型严格的编译系统,这使得c++程序的错误在编译阶段即 【推荐阅读:.Net的注册表操作】
2. c中很常见的预处理指令 #define variablename variablevalue 可以很方便地进行值替 【扩展信息:项目经理应具备的素质(个人整理)(1)】
的一个方面.
代,这种值替代至少在三个方面优点突出:
一是避免了意义模糊的数字出现,使得程序语义流畅清晰,如下例:
#define user_num_max 107 这样就避免了直接使用107带来的困惑.二是可以很方便地进行参数的调整与修改,如上例,当人数由107变为201时,进
改动此处即可,
三是提高了程序的执行效率,由于使用了预编译器进行值替代,并不需要为这些
常量分配存储空间,所以执行的效率较高.
鉴于以上的优点,这种预定义指令的使用在程序中随处可见.
3. 说到这里,大家可能会迷惑上述的1点.2点与const有什么关系呢?,好,请接着向下
看来:
预处理语句虽然有以上的许多优点,但它有个比较致命的缺点,即,预处理语句
仅仅只是简单值替代,缺乏类型的检测机制.这样预处理语句就不能享受c++严格类
型检查的好处,从而可能成为引发一系列错误的隐患.
4.好了,第一阶段结论出来了:
结论: const 推出的初始目的,正是为了取代预编译指令,消除它的缺点,同时继承它的优点.
现在它的形式变成了:
... 下一页