c++ 一个变量在多个cpp中使用问题

在a.h跟a.cpp中宣言了全局变量a_
然后在b.cpp中使用了a_
又在c.cpp中使用了a_
b.cpp跟c.cpp的值并不一样
现在想在c.cpp中调用b.cpp的变量a_
有什么办法可以解决?

全局变量处输入
extern int a_;
然后就可以用了追问

这样就无法在c.cpp中分别使用c.cpp原本的a_跟b.cpp中的a_了吧? extern会使a_默认都为b.cpp的a_

追答

你就不能改个名字或者弄成局部变量吗?
你这样程序看起来就很乱了

追问

试试看吧

温馨提示:内容为网友见解,仅供参考
无其他回答

c++ 一个变量在多个cpp中使用问题
全局变量处输入 extern int a_;然后就可以用了

C++中多个.cpp 共享一个.h文件变量的问题
在多个cpp文件中共享某变量。我觉得可以用C的做法,C下编译木有问题。1、在某个cpp中定义变量,如int a;2、在.h中用extern声明,即:extern int a;3、在另外的需要使用int a的cpp文件里,只要include"XX.h",(其中XX是自己定义的头文件名。而且因为是用户定义的头文件,要用“”,而不能是in...

如何在C++内多个CPP共享同一个变量
1.全局变量的定义和普通变量的定义相同,只是在别的cpp文件中使用前需要用extern修饰符声明。例如:主文件中定义 int global = 0;别的文件里面用 extern int global;申明一下就可以用了。2.extern可置于变量或者函数前,以表示变量或者函数的定义在别的文件中,提示编译器遇到此变量或函数时,在其它模...

问各位大侠C++中参数在不同的cpp文件里怎么传递的问题。谢谢了_百度...
最简单的方法是定义一个duquxml.h头文件 里面定义一个 extern int a;然后在duquxml.cpp引用这个头文件,定义int a。而在myxml.cpp要用的话就extern int a; \/\/全局变量哦。还有你说的构造函数 是怎么样的 能不能贴出来看下啊。给个例子吧 在duquxml.cpp文件中 全局变量 定义 int a;在duqu...

c++primer3中,有一句话:“在多个文件之间编译相同的函数模板定义增加了...
简单点说,对于一个vector<int>的函数,比如size(),如果在不同的cpp中出现,在这些文件编译的时候都要把vector<int>::size()编译一遍。然后在链接的时候把重复的函数去掉。很显然增加了编译时间。补充里你的理解是错的,模板的声明是不编译的,更没有空间,它根本不是实际的类型或函数,编译器根本...

c++ 一个工程 多个cpp文件问题
一个工程中只可以有一个入口函数main,不可以一个main函数调用另一个main函数,你可以调用另一个文件中的不是main的函数。有问题hi我。

一个关于C++全局变量的问题: 为什么在不同的源文件中访问一个头文件中...
我刚才遇到了你差不多的问题,我的理解是:因为包含.h文件实际上就是把.h中的内容扩展到每个.c中;也就是说,扩展之后每个.c中都定义了这个变量;但又因为static对全局变量是有作用域限制的,所以他们之间的关系是名字一样,(若没有static则会报错,重定义了)但分配的内存地址是不一样的;通俗的...

C++头文件里声明的变量如何能让所有.cpp文件都可以对它进行修改值,而且...
一下即可以了 extern C\/C++关键字 修饰变量,表示引用另一文件中的变量。extern变量:用关键字extern说明的变量成为外部变量。一个变量被说明为外部变量,其含义是告诉系统不必为其按一般变量那样分配内存,该变量已在这一局部的外边定义。外部变量一般用于由多个文件组成的程序中,有些变量在多个文件中被...

...1.cpp 中, 结构体变量值放在2.cpp, 在3.cpp中使用结构体?
首先你定义结构体,放在1.h头文件里面 然后你在2.cpp文件里面定义变量(记得包含1.h头文件)然后你3.cpp也要包含1.h头文件,其他照样写,可以用2.cpp的变量,但是结束后编译的时候需要联合编译2.cpp,这样才可以用2.cpp里面的变量 ---注意,是联合编译2.cpp,编译器都有这个功能的 ...

一个C++工程中不同文件之间的函数如何互相调用?
在2.cpp写 extern int a;(在全局范围写就可以了)之后就可以用a的值了。如果类型不是int,请自行修改。对于问题补充:增加一个与a同类型的全局变量,把a赋值给它,然后用上述方法。或者增加一个a的指针类型的全局变量,把a的地址赋值给它,然后用上述方法。

相似回答