→ akasan:爛方法是直接 #undef B 的 include guards 05/25 00:55
→ suhorng:我用 #pragma once 囧 05/25 01:01
推 littleshan:這沒好解法,就算能放進namespace也會造成link error 05/25 01:34
→ littleshan:header file直接引入的做法造成許多問題,這是其一 05/25 01:35
原來還會造成 link error! 那請問這是有不直接引入, 其他選擇的意思嗎~?
※ 編輯: suhorng 來自: 118.166.46.41 (05/25 01:41)
→ littleshan:沒有XD 只要你還是寫C/C++就要捏著鼻子忍受它 05/25 01:48
→ CCWck:架構就不合理..你既然有只要A 不要B的狀況 為何A要include B 05/25 02:43
→ CCWck:如果你的D只要A 不要B 那你該想想 是不是B的東西A根本非必要 05/25 02:46
是 A 的某些宣告要用到 B 的東西
(有的用到的是在 private 裡面, 基本上與引入 A 的檔案無關, 也不保證未來會繼續有)
→ linotwo:看起來你的 B 可能一開始就是一堆可分割的東西擠在一起 05/25 03:39
→ linotwo:那不如一開始就把 B 的內容分割整理好 05/25 03:40
只是舉個例 也有可能是把 A 切開 (而不是把 B 切開)
規劃的確是個問題... 我還在學 所以慢慢 refactor, 一開始就要規劃好有點難...
※ 編輯: suhorng 來自: 118.166.46.41 (05/25 11:07)
推 littleshan:這架構很正常,B可能是底層,A則是較高階的函式庫 05/25 15:18
→ littleshan:原po希望把「A depends on B」隱藏起來方便日後抽換 05/25 15:19
→ littleshan:也是比較有彈性的想法 (突然想到可以用pimpl解決) 05/25 15:20
推 damody:有本 c++ 大型軟體開發 的書 有寫 05/26 01:59
請問是這一本嗎?
http://www.books.com.tw/exep/prod/booksfile.php?item=0010531033
這好像是翻譯書, 請問品質如何呢?
※ 編輯: suhorng 來自: 118.166.50.221 (05/27 23:32)