以下是引用SunShining在2006-10-27 21:09:09的发言:
const int t=10;
肯定是有空间的.
const变量与普通变量一样 只不过该地址被编译器解释为只读而已.
这个是c中const,C++中的不同.

const int t=10;
肯定是有空间的.
const变量与普通变量一样 只不过该地址被编译器解释为只读而已.
这个是c中const,C++中的不同.
我前边说的很清楚啊,你的语句里有&j,当然就分配空间了
上边的话不是我说的,是Thinking in C++里话.
这个不好说,反正a(100,100)在内存中是存在的,关键是在栈区,还是在常量区
想出来了
THINKING IN C++说的那个情况
只是一种特殊情况
也就是在这一种情况下才不会非配地址
const int t=10;
int s[t];
.........
char ss[t];
下面只会用t当一个常数的别名,不会当作它用时,才不分配空间
之所以那里这么说,就象刚讲const,它不会提及const在函数里面的功能
只讲const最基本的用途
会回避一些放到以后说
难道说t只有在当数组下标时才不分配地址?