在不位于同一目录中的 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