在不位于同一目录中的 2 个 C++ 文件之间共享一个变量
Sharing a variable among 2 c++ file not located in the same directory
我有两个 C++ 文件。
一个 (AudioSystem.cpp) 位于 ./framework/av/media/libmedia
另一个 (AudioFlinger.cpp) 位于 ./framework/av/services/audioflinger
他们共享一个头文件
#include <system/audio.h>
我想创建一个在 AudioFlinger.cpp 和 AudioSystem.cpp 之间共享的变量。
他们都应该能够修改 var 值,并且他们应该看到相同的值。
谢谢
全局变量可以在你的 AudioFlinger.cpp 或 AudioSystem.cpp 中定义,但你应该确保在其他 cpp 文件中声明此变量为 extern
的语句放置在例如使用 h 文件和 #include
.
此外,您可以制作带有变量定义的单独 cpp 文件和带有 extarn 变量声明的适当 h 文件,例如:
// var.cpp
int sharedVariable;
和
// var.h
extern int sharedVariable;
现在任何 #include "var.h"
所在的 cpp 模块都可以使用 sharedVariable
我有两个 C++ 文件。
一个 (AudioSystem.cpp) 位于 ./framework/av/media/libmedia
另一个 (AudioFlinger.cpp) 位于 ./framework/av/services/audioflinger
他们共享一个头文件
#include <system/audio.h>
我想创建一个在 AudioFlinger.cpp 和 AudioSystem.cpp 之间共享的变量。
他们都应该能够修改 var 值,并且他们应该看到相同的值。
谢谢
全局变量可以在你的 AudioFlinger.cpp 或 AudioSystem.cpp 中定义,但你应该确保在其他 cpp 文件中声明此变量为 extern
的语句放置在例如使用 h 文件和 #include
.
此外,您可以制作带有变量定义的单独 cpp 文件和带有 extarn 变量声明的适当 h 文件,例如:
// var.cpp
int sharedVariable;
和
// var.h
extern int sharedVariable;
现在任何 #include "var.h"
所在的 cpp 模块都可以使用 sharedVariable