const对象一旦被创建,值就不能再改变,因此const必须被初始化。
const int i=get_size();//正确:运行时初始化
const int j=42;//正确:编译时初始化
const int k;//错误:k是一个未经初始化的常量
在const类型上的操作不能改变其内容。其他操作如普通常量一样。
默认状态下,const对象仅在文件内有效:
多个文件中出现同名const变量时,等同于在不同文件中分别定义了独立的变量。
想在一个文件中定义,多个文件中声明并使用:
加extern关键字,如:
//在file_1.cpp定义并初始化一个常量,该常量能被其他文件访问
extern const int bufsize=fcn();
//file_1.h头文件
extern const int bufsize;
必须对常量定义之前加extern限定。