繁体   English   中英

C ++输入全局变量可跨多个类访问

[英]C++ input global variables accessible across several classes

我正在开发一个带有几个命令行参数的项目,并将这些参数用作后续模拟的参数。 (我希望批量运行大量实验)。

在运行时设置全局变量的最佳方法是什么? 全局方面:变量可能在运行期间发生变化,但应该可以在大量类中访问。

目前我将它们读入Config对象,我将其包含在其他类中。 如果有人有更好的想法(xml?)我都是耳朵。

谢谢!

将所有相关变量放在一个屋檐下以便于访问。 有两种方法:

(1)命名空间全局变量

namespace Configuration {
  extern int i;
  extern bool b;
  extern std::string s;
}

(2)类静态成员

class Configuration {  // provide proper access specifier
  static int i;
  static bool b;
  static std::string s;
}

要很好地跟踪它们,请使用getter() - setter()方法作为namespace / class中的包装器。
使用getter-setter,如果程序需要,您可以以线程安全的方式处理它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM