[問題] static const 有dependency怎麼辦

看板C_and_CPP (C/C++)作者 (我愛阿蓉)時間13年前 (2013/06/03 12:52), 編輯推噓0(006)
留言6則, 3人參與, 最新討論串1/1
大家好 看到一份code 他的static const 在cpp 定義時 會用到別的class的static const 之前有看到文章說 好像不保證 誰會先初始化 可能會發生問題? 我想問的是 會遇到這問題 是天生程式design上就有缺陷 有沒有那種不可避免的case 我自己用VC亂測 假設寫的時候順序是 const int *ptr = new int(*CONST::VALUE); int *CONST::VALUE = new int(5566); 然後印ptr 他也是5566 我可以假設他compiler有去檢查dependency嗎? 別家compiler可能就會出問題? 那若是我遇到這case有沒有什麼改法 能保證他的順序性 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.64.222

06/03 17:39, , 1F
宣告一個 global function
06/03 17:39, 1F

06/03 17:39, , 2F
T& getGlobal(){static T t;return t;}
06/03 17:39, 2F

06/03 17:40, , 3F
讓其他 compile unit 只用這個 function 拿變數內容
06/03 17:40, 3F

06/03 22:02, , 4F
好singleton 不用嗎 (??????????????????????
06/03 22:02, 4F

06/04 22:58, , 5F
singleton 當然不用...
06/04 22:58, 5F

06/05 00:42, , 6F
XDDDDD
06/05 00:42, 6F
文章代碼(AID): #1Hh24IHh (C_and_CPP)
文章代碼(AID): #1Hh24IHh (C_and_CPP)