[問題] C++ 變數無法正常創建
在Visual Studio 2008編寫MFC GUI時遇到一個莫名其妙的神奇問題
首先上圖:
https://i.imgur.com/eGBVQ.jpeg
![](https://i.imgur.com/eGBVQ.jpg)
我在這個function創建一個變數byWTF
之前是別的名字,但我後來故意改一個沒用過的變數名稱保證這個名稱不可能被用過
然後實際在debug時,發現這個變數絕對不會被創建
導致後續出現一系列非預期錯誤
從圖中也能看到
byWTF早就被宣告
上一行執行也給他賦值了
但是把他Add watch就發現這個變數根本沒被放到記憶體
然後後面實際要用到他就直接閃退報錯了
所有其他變數都能正常宣告創建
就他跟我之後測試用建的所有變數都無法正常創建
我這邊到底是做錯了甚麼?真的毫無頭緒
更新: Debug build可以正常宣告, Release build就會出問題
240711 AM09:50更新:
我把整個release資料夾砍掉 再build
雖然byWTF依舊無法watch 但不會再出錯crash了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.45.59 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1720601570.A.BC6.html
→
07/10 17:52,
1月前
, 1F
07/10 17:52, 1F
最內層迴圈
有用在if判斷式 以及後續也會把這個值賦予給別的變數
這個變數沒被創建 導致我後續vector部分index會無法正常賦值 進而造成crash
我用Debug build跑就完全正常 但一用release build就會死在這
→
07/10 17:52,
1月前
, 2F
07/10 17:52, 2F
→
07/10 17:52,
1月前
, 3F
07/10 17:52, 3F
→
07/10 17:52,
1月前
, 4F
07/10 17:52, 4F
→
07/10 17:52,
1月前
, 5F
07/10 17:52, 5F
→
07/10 17:52,
1月前
, 6F
07/10 17:52, 6F
→
07/10 18:03,
1月前
, 7F
07/10 18:03, 7F
但很顯然他把我一個必須用到的變數給最佳化掉了...
→
07/10 18:34,
1月前
, 8F
07/10 18:34, 8F
→
07/10 18:34,
1月前
, 9F
07/10 18:34, 9F
→
07/10 18:34,
1月前
, 10F
07/10 18:34, 10F
→
07/10 18:34,
1月前
, 11F
07/10 18:34, 11F
→
07/10 19:52,
1月前
, 12F
07/10 19:52, 12F
這個function進入前就會在別的function給值了
我在本文貼的那個斷點處也檢查過該vector裡確實有我預期的所有資料
推
07/10 19:53,
1月前
, 13F
07/10 19:53, 13F
→
07/10 19:53,
1月前
, 14F
07/10 19:53, 14F
→
07/10 20:26,
1月前
, 15F
07/10 20:26, 15F
→
07/10 20:26,
1月前
, 16F
07/10 20:26, 16F
有試過在那兩個vector初始化的下面那行加
byWTF = 0;
然而斷點設在210 用F10去跑每一行的時候
會直接跳過byWTF=0; 也watch不到東西(Symbol not found)
推
07/10 22:31,
1月前
, 17F
07/10 22:31, 17F
好 我再試試看 感謝
==
更新:我把整個release資料夾砍掉 再build
雖然byWTF依舊無法watch 但不會再出錯crash了
→
07/11 12:41,
1月前
, 18F
07/11 12:41, 18F
參數是指?
→
07/11 12:43,
1月前
, 19F
07/11 12:43, 19F
該class的private全域變數 我是直接宣告在標頭擋的class裡的
→
07/11 12:49,
1月前
, 20F
07/11 12:49, 20F
→
07/11 12:49,
1月前
, 21F
07/11 12:49, 21F
→
07/11 21:01,
1月前
, 22F
07/11 21:01, 22F
→
07/11 21:01,
1月前
, 23F
07/11 21:01, 23F
→
07/11 21:03,
1月前
, 24F
07/11 21:03, 24F
→
07/11 21:03,
1月前
, 25F
07/11 21:03, 25F
→
07/11 21:28,
1月前
, 26F
07/11 21:28, 26F
推
07/11 22:34,
1月前
, 27F
07/11 22:34, 27F
→
07/11 22:35,
1月前
, 28F
07/11 22:35, 28F
推
07/12 00:38,
1月前
, 29F
07/12 00:38, 29F
→
07/12 00:38,
1月前
, 30F
07/12 00:38, 30F
→
07/12 00:38,
1月前
, 31F
07/12 00:38, 31F
推
07/12 19:27,
1月前
, 32F
07/12 19:27, 32F
→
07/12 19:27,
1月前
, 33F
07/12 19:27, 33F
推
07/12 22:38,
1月前
, 34F
07/12 22:38, 34F
※ 編輯: handofn0xus (42.72.7.15 臺灣), 07/26/2024 14:16:57
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章