看板 EE_DSnP 關於我們 聯絡資訊
關於這個 bug...個人 de 了大老半天 (至少花了超過三四個小時有吧ˊˋ) 最後發現有一個共通性... 就是 版本的不同啊啊啊!!! 簡言之,就是 Ubuntu 11.10 的版本測出來的第一個 element 是 vkuux 用 11.04 的話第一個 element 就會是 fitho 目前個人只測過四臺電腦(兩個是 11.04,兩個是 11.10) 要不然可能是...g++ 的問題 因為有這個問題的 g++ 是版本 4.6.1 沒出問題的版本是 4.5.2... 想請請問一下有出這個問題的各位... Ubuntu 或 g++ 的版本是不是跟我的一樣?! (在終端機輸入 g++ --version 就可以看到 g++ 的版本) BTW make 的版本都一樣,都是 3.8.1 感謝!!! ============================================================================== 測試過程: 1. 確認 AdtTestObj 的 constructor 叫了幾次,這個部分用 cout 大法,沒問題。 2. 確認 AdtTestObj 的 constructor 裡面產生的 _str,發現 _str 確實是產生了兩次 vkuux。 3. 接下來是直接在 AdtTestObj 的 constructor 裡面直接多產生 5 個 rnGen,這時候 會發現,在產生第一個 element 的時候,rnGen 似乎重新開始取樣。 ====== 最後在實在無法靠自己解決這個問題ˊˋ...只好跟別人借 code 來看 ====== 4. 直接把沒出這個問題的 dlist.h 丟到自己的 util 裡面,結果發現第一個 element 還是 vkuux。 5. 為了確認是否是 hw5 更新的關係,把 lib 換回以前的,甚至直接從原本的壓縮檔直 接解壓縮,再把 dlist.h (無論正常與否)丟進去,出來的第一個 element 都是 vkuux。 =========================== 實在是完全放棄之後... =========================== 6. 直接把自己有問題的 dlist.h 丟到同學的電腦裡面去測,發現完全沒問題?! 7. 經過比對其他有這個問題的人(其實也才一個ˊˋ)之後發現,唯一的不同點似乎是 出在版本的不同:Ubuntu 或 G++ 的版本差異。 ============================================================================== 給直接 End 的... 可以幫忙看一下 Ubuntu 或 g++ 的版本,和是否出現這個問題嗎??? (要看 g++ 的版本,在終端機輸入 g++ --version 就會出現了) 謝謝!!! -- 以上,純屬戲言 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.25.108
ric2k1:辛苦了,我們這邊可以做到的就是讓批改不會是 platform 11/28 14:26
ric2k1:dependent! 11/28 14:26
e124553423:ubuntu 11.10, g++ 4.6.1, first element vkuux. 11/28 15:56
e124553423:推一個 11/28 15:57
ha531102:g++ 4.6.1 / Ubuntu 11.10 情況也和你一樣第一個是vkuux 11/29 16:57
rf0914:ubuntu 11.10 g++ 4.6.1 第一個是 vkuux 11/29 17:56
rf0914:ubuntu 10.04 g++ 4.4.3 第一個是 fitho 同樣的code 11/29 18:09
AlexCYW:我是fitho 然後我發現vkuux好像是head的data 11/30 16:06
AlexCYW:補充 ubuntu 10.10 g++ 4.4.5 11/30 16:13
victoret:不論哪個版本,_head 裡存的 _data 都是 vkuux 沒錯 11/30 23:26
ericswatch:ubuntu 11.10, g++ 4.6.1, first element vkuux. 12/02 09:48