首页 > 代码库 > const 对象默认为文件的局部变量
const 对象默认为文件的局部变量
在全局作用域中定义非const变量时,它在整个应用程序中都可以访问,如果是const变量那么它只是在当前文件中的局部变量。
我们知道如果要一个变量在其他文件中也可使用的话我们可以用extern标识变量即可,默认非const型的变量为extern
1.cpp
extern int number;//声明了一个number变量,他会在其他模块寻找定义
int main(){
cout<<number<<endl;//number是100
}
2.cpp
int number=100;//定义了一个全局变量,默认为extern
如果我们用const的话
2.cpp
const int number=100;//这个行吗?不行const之后默认不是extern而是文件的局部变量,所以要加extern
extern const int number=100;//这个ok
1.cpp
extern const int number;//我们知道const必须初始化,但是extern声明了就不用初始化了
int main(){
cout<<number<<endl;//number是100
}
const 对象默认为文件的局部变量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。