14
A
回答
11
[dcl.decl]/3說
-3-每個INIT-在一個聲明被單獨分析,如果它是在由本身的聲明。
這意味着你的代碼是一樣處理:
int a = pop();
int b = pop();
int c = pop();
+2
嗯 - 我不相信這意味着可預測的初始化順序... – 2013-03-06 13:32:36
+3
仍然不能保證任何特定的順序。 – 2013-03-06 13:33:05
+1
注97提供了一個解釋,但使用「通常」的工作。然而,我相信這隻意味着這條規則有明確的例外,但它不是「由編譯器決定」。 – 2013-03-06 13:34:26
相關問題
- 1. JavaScript變量的初始化和聲明順序
- 2. C++全局變量初始化順序
- 3. scala - 未初始化的變量聲明
- 4. 聲明和初始化全局變量
- 5. Maya MEL變量聲明和初始化
- 6. 聲明和初始化結構變量
- 7. 初始化靜態final變量聲明與初始化在Application.OnCreate()
- 8. 變量初始化並聲明後可能尚未初始化
- 9. c聲明和初始化
- 10. Obj C初始化程序聲明
- 11. 靜態變量初始化順序
- 12. 靜態變量的初始化順序
- 13. 關於變量初始化順序
- 14. C++單初始化順序
- 15. 指針聲明,但未初始化的變量用C
- 16. 瞭解靜態變量的聲明/初始化C
- 17. C:聲明後初始化結構體變量
- 18. C++,而內部聲明和初始化變量循環
- 19. C++變量聲明和初始化規則
- 20. C++全局變量和初始化順序
- 21. 全局變量的C++初始化順序
- 22. C結構聲明和初始化
- 23. GCC發出警告初始化的順序不匹配聲明
- 24. C#初始化變量
- 25. C#:初始化類變量
- 26. C#λ變量初始化
- 27. C變量未初始化
- 28. Vb.net聲明和初始化
- 29. 初始化在聲明
- 30. PIC18變量聲明和初始化失敗硬件
你能解釋一下爲什麼這很重要?我們可能會給出更好的答案 – alestanis 2013-03-06 13:29:11
我想只寫一行而不是3行:) – shoosh 2013-03-06 13:34:59
提高可讀性並使用3行聲明您的訂單。就這麼簡單。無論如何,擺脫兩條糟糕的線條有什麼意義? – stefan 2013-03-06 13:35:49