在仿真代码中使用全局变量

nos*_*e99 5 c++ simulation global-variables

可能的重复:
全局变量坏吗?

我正在编写一个利用材料和能源特定数据的模拟代码。该数据存储在全局数组中,因为一旦上传,它们将在模拟过程中使用,并且应该可以被大多数函数访问。

我到处都读到使用全局变量不是一个好习惯。有人能给我解释一下,或者给我指点网络上的资料,解释我如何在需要使用大量数据数组的同时避免在模拟应用程序编码中使用全局数组。我尝试用 C++ 编写代码并尽可能多地使用面向对象的特性。

在此先感谢您的帮助。

iam*_*ind 1

您说得对,不建议使用全局变量。你可以在 a 中声明那些不相关的 golbals namespace

//Globals.h
namespace Globals
{
  extern int a[100];
  extern double d;
}
Run Code Online (Sandbox Code Playgroud)

并在.cpp文件中定义它们。

//Globals.cpp
int Globals::a[100] = { ... };
double Globals::d = 3.14;
Run Code Online (Sandbox Code Playgroud)

现在将它们用作 等Globals::aGlobals::d我的答案是从代码管理的角度来看。