C++使用全局变量
2012-05-23 19:09
225 查看
如果在在多个.cpp文件中都要用到某个变量,那么这个变量就是全局变量。
首先,在.h文件中声明这个变量,加上extern关键字,但是不能给变量赋值。比如在头文件a.h中这样写:
g++ -W a.cpp a1.cpp a2.cpp -o a
运行
./a
结果如下:
f1:global=1111
f2:global=2222
main:global=2222
首先,在.h文件中声明这个变量,加上extern关键字,但是不能给变量赋值。比如在头文件a.h中这样写:
#ifndef _A_H #define _A_H extern int global; #endif在main()函数所在的文件种定义这个全局变量,可以初始化。
#include <iostream> using namespace std; void f1(); void f2(); int global; int main() { global = 1234; f1(); f2(); cout<<"main:global="<<global<<endl; return 0; }在main()函数中还声明了两个函数f1()和f2(),它们分别在a1.cpp和a2.cpp这两个文件中定义。在这两个文件中都用到了global这个全局变量,所以在这两个文件中要include头文件a.h
/*a1.cpp*/ #include <iostream> #include "a.h" using namespace std; void f1() { global = 1111; cout<<"f1:global="<<global<<endl; }
/*a2.cpp*/ #include <iostream> #include "a.h" using namespace std; void f2() { global = 2222; cout<<"f2:global="<<global<<endl; }最后,同时编译a.cpp,a1.cpp,a2.cpp这3个文件
g++ -W a.cpp a1.cpp a2.cpp -o a
运行
./a
结果如下:
f1:global=1111
f2:global=2222
main:global=2222
相关文章推荐
- 记C++坑:1.被自己坑了一次的全局变量使用
- C++全局变量在多个源代码文件中的使用
- C++中全局变量的使用和注意事项
- C++中使用全局变量方法
- c++多文件使用全局变量的方法
- C++中的全局变量使用
- c++中的全局变量的定义与使用
- C++全局变量在多个源代码文件中的使用
- C++全局变量在多个源代码文件中的使用
- C++如何定义多个文件使用全局变量
- c/c++全局变量在多个源文件中的使用
- C++全局变量在多个源代码文件中的使用
- c++ 中全局变量的使用方法
- 在C++工程中main函数之前跑代码的廉价方法(使用全局变量和全局函数)
- C++ 全局变量、静态全局变量、局部变量、静态局部变量使用归类
- C++中全局变量如何使用
- C/C++多文件共享全局变量时,使用extern的规范
- 论“使用C++非内置全局变量的风险”
- C++全局变量在多个源代码文件中的使用
- C++中怎么使用全局变量?