Почва исключение с ++

Когда я делал свою игру, все прошло нормально, но внезапно у меня появилось странное исключение на загрузочной картине почвы. Это не произошло в начале игры, это случилось внезапно, это было очень странно.

вот картинка: http://oi39.tinypic.com/vgj9y.jpg

вот код:

bool window::loadTex(std::string fName, int fNum)
{
        textur[fNum] = SOIL_load_OGL_texture
            (
            (char*)fName.c_str(),
            SOIL_LOAD_AUTO,
            SOIL_CREATE_NEW_ID,
            SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y 
            );
        if(textur[fNum] == 0)
            return false;
        return true;
}

и вызов функции:

if(!loadTex(std::string("data/back.png"), 0))
        printf("Can't load image");

это так странно... когда произошло исключение, я не сделал ничего, что связано с почвой.

Есть больше информации об этом в Dissambly, это может помочь?

First-chance exception at 0x784FFDEE (msvcr100.dll) in ConsoleApplication6.exe: 0xC0000005: Access violation reading location 0x00000000.

Исправлена! большое спасибо!

1 ответ

Решение

В этом нет ничего странного. У вас есть ошибка во время выполнения. Возможно, где-то в вашем коде вы переполняете некоторую память, и именно так проблема проявляется. Вам нужно найти проблему в вашем коде.

Один из способов найти проблему - посмотреть с помощью отладчика, что не так с объектами, где происходит сбой. Возможно, один из указателей там имеет недопустимое значение. Если адрес этого указателя, в котором содержится мусор, является постоянным между запусками, вы можете поставить точку прерывания данных на его адрес и видеть, каждый раз, когда вы достигаете точки останова данных, кто ее меняет и является ли это ошибкой или нормальным исправным течь.

Другие вопросы по тегам