假設我有以下代碼:跨文件的依賴變量之間初始化的順序是什麼?
extern std::string first_string; //defined in another file
std::string another_string(first_string + "some other string");
我的問題是:
是它的標準保證first_string
永遠another_string
之前被初始化?
如果沒有,應該在實踐中避免這樣的代碼?
我試圖通過閱讀C++標準N3485第3.6節和3.7節來了解這一點。但我沒有找到一個好的答案。我非常感謝您在草擬答案時能夠指出標準的一部分。 謝謝你的幫助。
+1謝謝。我應該徹底閱讀C++ FAQ。 – taocp