精華區beta Programming 關於我們 聯絡資訊
※ 引述《leicheong.bbs@bbs.sayya.org (理昌)》之銘言: : 可是需要留意一點, 在VC系列的compiler, optimization預設是關閉的(/Od). : 需要手動打開. : 因為 (尤其是在寫多線程的程式時) 打開optimization會有一定機會出現 : 「平常跑時會出現可重複的問題, 而在debug模式中卻不會出現」這種 : 令人頭痛的情況. (Overoptimization) : 好像部份gcc compiler也有這種情況. (我不太用gcc因此詳細情況不清楚) : 這樣在討論時是否以沒有optimization下的情況來討論比較正當呢? 這和 complier 的預設沒有什麼關係, 和目的比較有關. 若只是在討論 程式的正確性, 使用 debug 模式是沒問題. 但若是在比較執行的速度, 比 debug (或 -g) 的程式就沒有意義,畢竟產生出來的 code 並不是以 效率為考量. 事實上, 真正的要比較速率, 除了使用 -O (或 /Od) 外, 正確的作法是還要 加上 profiling, 如此才能真正的反映最好的執行效率. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 69.236.127.197