VC++ 全局变量

来源:百度知道 编辑:UC知道 时间:2024/04/29 21:22:48
我在头文件里面用extern int定义了一个全局变量
在A.CPP中对其赋了值
我想在B.CPP中调用该变量的时值会传过来来
如果不能传过来有没有什么方法可以让其传值过来呢
各位大虾,我再补充一点
举个实例好了:
头文件zdy.h里面 extern int a;
A.CPP中
#include "zdy.h"
int a;
void abc()
{ a = 10;}
B.CPP中
问题1:在这里是否还耍要加头文件以及对全局变量的声明
问题2:我在B.CPP中又有一个函数abb()
void abb()
{ int b;
b = a;}
在这里a的值会从A.CPP中传过来吗

wxn_byekiss好象误解楼主的意思了
如果定义了外部类变量,那么在引用前最好先声明,外部类变量要定义在任何函数体外,且只能被定义一次,它在整个程序范围内有效,整个程序内都可以引用,无须包含头文件
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
外部类变量定义时不用加extern关键字,只要把它定义在任何一个函数体外即可,在引用时,你也别管什么情况可以不声明什么时候必须声明,一律都声明就是了.
比如你在工程内随意一个地方定义了一个变量:
int a=0;
那么在使用前先来这么一句:
extern int a;
接下去再开始使用变量a.
只要a是在工程内(导入了工程)定义的,那么在使用时不必加头文件.

可以传过来,需要在B.cpp加入定义全局变量的头文件。

lewvan850307说得对,你只要在你要引用的地方加上extern 变量,就可以引用了

在B中添加#include<zdy.h>
或者是直接添加代码extern int a;
两者不能同时都有的!

定义全局变量不用extern
在另外的文件中引用的时候才用extern