我爲SFML編寫了一個封裝器,如果需要的話,我可以替換我的遊戲的渲染器。有效。然後我重構了它,並且在它仍然編譯時,我現在在運行編譯的可執行文件時「無法初始化應用程序0xc000005」。「無法初始化應用程序0xc000005」
什麼會導致這樣的錯誤?谷歌沒有幫助。我正在使用Windows XP。
我爲SFML編寫了一個封裝器,如果需要的話,我可以替換我的遊戲的渲染器。有效。然後我重構了它,並且在它仍然編譯時,我現在在運行編譯的可執行文件時「無法初始化應用程序0xc000005」。「無法初始化應用程序0xc000005」
什麼會導致這樣的錯誤?谷歌沒有幫助。我正在使用Windows XP。
0xc000005
是ERROR_ACCESS_VIOLATION
- 你有一個野指針的地方。
我偶爾獲得這樣的錯誤,當我具有以下設置:
應用針對X.lib聯,這將導致對Y.lib聯X.dll X.dll的動態負載,這會導致動態加載Y.dll
當X.dll在路徑中但不是Y.dll時運行應用程序。
我相信你沒有初始化glew並在你的代碼中使用它。嘗試將glewInit();
放在代碼的起始處。
我認爲需要更多的細節來提供超出顯而易見的「重構中出現錯誤」的內容。 – 2010-06-22 17:57:13
缺少發佈我所有的代碼,你會推薦什麼? – 2010-06-22 18:10:49
通常很明顯 - 使用您的版本控制系統來查看您在重構時更改的內容。要麼有選擇地回滾更改,直到它再次工作,要麼將它們全部回滾,然後有選擇地前滾,直到它再次中斷爲止,以隔離問題。一旦你解決了這個問題,修復可能是顯而易見的,或者你可能想要發佈相關代碼,詢問這種改變如何破壞事情。 – 2010-06-22 18:15:39