Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

路漫漫,长修远,我们不能没有钱
随笔 - 172, 文章 - 0, 评论 - 257, 引用 - 0
数据加载中……

const常量编译期的内存分配情况

如果有什么错漏 ,麻烦大家给我添加和指正

分配内存的情况:
extern const int bufsz;   //外部声明

const int bufsz=100;
long address =(long) &bufsz;  //取const变量的地址

const int [] i={1,2,3};  //用于集合

class x{
    const int i; //类const,跟c中的const常量特性一样
public:

}

不分配内存的情况:
const int i=100; //全局常量


# 回复:const常量编译期的内存分配情况 2004-12-14 12:29 PM commons

c++的编译器通常不为普通const常量分配存储空间,而是将它们保存在符号表中,这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高,同时,这也是它取代预定义语句的重要基础。 

# 回复:const常量编译期的内存分配情况 2004-12-14 2:56 PM 思春贴调查员(khan)

我也不明白符号表是什么东西 

# 回复:const常量编译期的内存分配情况 2004-12-15 10:15 AM commons

符号表的作用是登记源程序中出现的各种名字及其信息,以及编译各阶段的进展状况。
实现技术:线性表,对折查找与二叉树,杂凑技术;




posted on 2004-12-14 18:53 Khan 阅读(1558) 评论(1)  编辑 收藏 引用 所属分类: GCC/G++

评论

# re: const常量编译期的内存分配情况  回复  更多评论   

奥,好像是
2008-08-14 10:12 | fairzy

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理