const对象默认为文件的局部变量

Posted 此女子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了const对象默认为文件的局部变量相关的知识,希望对你有一定的参考价值。

const限定符可以将一个对象转换为一个常量。因为常量在定义后就不能被修改,所以定义时必须初始化。

在全局作用域里定义非const变量时,它在整个程序中都可以访问。例如:

//file1.cpp
int counter;   //definitaion

//file2.cpp
extern int counter;   //use counter in file1

与其他变量不同,除非特别说明,在全局作用域声明的const变量时定义该对象的文件的局部变量。此变量只能在那个文件中,不能被其他文件访问。

通过指定const变量为extern,就可以在整个程序中访问const对象。

//file1.cpp
extern const int bufsize = fcn();   //define and initialize a const that is accessible to other files

//file2.cpp
extern const int bufsize;   //use bufsize in file1

非const变量默认为extern。要使const变量能够在其他文件中访问,必须显式地指定它为extern。

以上是关于const对象默认为文件的局部变量的主要内容,如果未能解决你的问题,请参考以下文章

c++知识点

C++关键字const

声明和定义,const,enum,头文件

声明和定义,const,enum,头文件

全局变量和const定义是啥?

const