摘要: C语言中一般使用#define来定义常量,而C++中推荐使用const。因为#define定义的常量只是定义了名字和值的映射,存储在符号表中,在预处理阶段进行名值替换,不会进行类型检查操作。而const会进行类型检查。c++中const默认是内部链接的,也就说,const仅在const被定义过的文件里才是可见的,而在链接中不能被其他编译单元看到。这是因为const默认也是放到符号表中的,不会为其分配内存空间。但也有例外:当使用extern和取const变量的地址时,会强制为其分配内存空间。e.g. extern const int size=10; 或 const int size=10; c 阅读全文
posted @ 2012-07-30 12:33 freewater 阅读(541) 评论(0) 推荐(0)