注册 登录
编程论坛 C++教室

老师们,看看这个const常量

多维数组 发布于 2007-05-01 21:44, 600 次点击
我是C++的初学者,今天看<<C++ Primer 第四版>>写了个程序
#include <iostream>
int main()
{
int cnt;
std::cin >> cnt;
const int x=cnt;
std::cout << cnt << ' ' << x << std::endl;
return 0;
}
输入:
5
输出:
5 5

我想问这个const常量还是常量吗??
9 回复
#2
yuyunliuhen2007-05-01 21:48
你在后面试着去改变它的值,看能不能输出来就可以知道了
#3
多维数组2007-05-01 21:54
我记得 在编译期间能知道值的才叫常量
这个常量竟可以随用户输入而改变。
#4
yuyunliuhen2007-05-01 21:55

呵呵 事实证明一切呀

#5
zhouzhengbo2007-05-01 22:03

常量指不能改变其值的量,一旦定义就不能改变。
编译期间就知道值的是静态常量

#6
weishj2007-05-01 22:11

是常量,在cnt被赋值前x还未被定义,所以这时x不存在
cnt被赋值以后,定义了常量x,将其初始化为cnt的值,在此以后的所有程序段中,都不能改变x 的值了

#7
aipb20072007-05-03 00:02
以下是引用zhouzhengbo在2007-5-1 22:03:38的发言:

常量指不能改变其值的量,一旦定义就不能改变。
编译期间就知道值的是静态常量

正解,莫混淆了!

#8
多维数组2007-05-03 20:59
谢谢,我懂了
const常量初始化不一定要用常量表达式。
#9
sqyang5212007-05-09 23:38
常量只要定义后就只能在定义的地方才可以改变其值的~~~

在其他地方应该是不能改变的~~~~
1