C++ SDL游戏:2D向量上的崩溃

C++ SDL游戏:2D向量上的崩溃,c++,pointers,vector,struct,sdl,C++,Pointers,Vector,Struct,Sdl,我正在使用SDL制作一个游戏,一切正常,但当我在Windows 7上测试它时(我在win XP上编写代码),它在这一部分崩溃: void ImageManager::DrawObjectTile(int i,int j) { ScreenPosition.x = (j*TITLE_SIZE) - MapScrollX; ScreenPosition.y = (i*TITLE_SIZE) - MapScrollY; if (Main

我正在使用SDL制作一个游戏,一切正常,但当我在Windows 7上测试它时(我在win XP上编写代码),它在这一部分崩溃:

void ImageManager::DrawObjectTile(int i,int j)
{
           ScreenPosition.x = (j*TITLE_SIZE) - MapScrollX;
           ScreenPosition.y = (i*TITLE_SIZE) - MapScrollY;
           if (Main_BuildingManager_Ptr->Building_Vector[i][j].BuildingType==TX_EmptyTile)
           {
                Source.x = EMPTY_TILE_X;
                Source.y = EMPTY_TILE_Y;
                SDL_RenderCopy( Main_System_Ptr->GetRenderer(),
                Sheet_1,
                &Source,
                &ScreenPosition);
           }
基本上,它在这条线上崩溃了:

 if (Main_BuildingManager_Ptr->Building_Vector[i][j].BuildingType==TX_EmptyTile)
我一直在调试这个,I和j变量都是正确的。向量也被填充

BuildingManager::BuildingManager()
{
    Building_Vector.resize(LEVEL_HEIGHT);

         for (int y=0; y<Building_Vector.size(); y++)
         {
             Building_Vector[y].resize(LEVEL_WIDTH);
                for (int x=0; x<Building_Vector[y].size(); x++)
                {
                       Building_Vector[y][x].BuildingType = TX_EmptyTile;
                }
         }
}
BuildingManager::BuildingManager()
{
建筑向量。调整大小(标高高度);

对于(int y=0;yw什么是
Main\u BuildingManager\u Ptr
?什么是
Main\u BuildingManager\u Ptr->Building\u Vector
?指针的值是什么?i
j
的值是什么(以及
LEVEL\u HEIGHT
LEVEL\u WIDTH
)还有,崩溃的确切原因是什么?
Main\u BuildingManager\u Ptr
是指向
Building\u Manager
类的指针。
Main\u BuildingManager\u Ptr->Building\u Vector
很好,我如何访问向量。
I
j
都是0,
LEVEL\u高度
是58,
LEVEL\u宽度
是64。崩溃很简单穆斯“不发送”错误。指针的值是什么意思?
Main\u BuildingManager\u Ptr
?我假设
Building\u Vector
是一个
std::Vector
?至于指针,是的,如何声明和初始化
Main\u BuildingManager\u Ptr
?是的,
Building\u Vector
std::Vector Building\u Vector
其中
BuildingInfo
是一个结构类型数组。至于指针,它在BuildingManager.cpp文件
BuildingManager*Main\u BuildingManager\u Ptr
的顶部声明,我的BuildingManager.h文件中也有
extern BuildingManager*Main\u BuildingManager\u Ptr