2017-02-07 74 views
-1

我正試圖在我正在處理的一個小項目中實現牛頓物理。我寫了一個解析器來實現它在半條命1內。C++ |拋出的異常...訪問衝突讀取位置錯誤

當我嘗試在地圖中使用它時,它會引發訪問衝突錯誤。它的位置是0xFFFFFFF0。

當我試圖在Visual Studio 2015中使用調試時,它指向了這裏。

bmodels[ modelNum ] = NewtonCreateConvexHull(m_pWorld, numVerts, (float*)&verts[ 0 ][ 0 ], 12, NULL); 

所以我很茫然。完整的功能可以在http://pastebin.com/W6NAs2hM找到。

回答

0

基於您的代碼非常快速,並基於您描述的錯誤,它看起來像您訪問您的數組越界。

您爲1的指數,即啓動了循環初始,modelNum = 1

for(int modelNum = 1; modelNum < m_iNumModels; modelNum++) 

,然後在該行

bmodels[ modelNum ] = NewtonCreateConvexHull(m_pWorld, numVerts, (float*)&verts[ 0 ][ 0 ], 12, NULL); 

您嘗試訪問bmodels[1],但實際上它應該因爲0始終是數組的第一個索引,所以爲bmodels[0]

相關問題