读书人

const常量的存储解决思路

发布时间: 2012-02-17 17:50:42 作者: rapoo

const常量的存储
请问:
const常量有没有实际的内存分配?简单点说,
#define 指令只是在编译期间执行简单的文本替换,所以不存在内存的分配。那么const呢?

[解决办法]
可能分配,也可能不分配
[解决办法]
在C中,const是外部连接(全局变量,存储在静态数据区)的,需要分配内存.
在C++中,const是内部连接(只在当前编译单元内生效),是否分配就要视情况而定.如果定义简单一般都不分配内存,如果要取const的地址或定义比较复杂(如数组),则会分配内存.

详细解释可以参看 <C++ 编程思想> 中关于const的详细说明.

读书人网 >C++

热点推荐