簡體   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