Błąd programu Irrlicht.

Błąd programu Irrlicht.
iks de
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 4 lata
  • Postów:97
0

Witam. Mam taki kod:

Kopiuj
#include <Irrlicht.h>

using namespace irr;


int main()
{
    IrrlichtDevice* device = createDevice(video::EDT_OPENGL);
    if (!device) return 1;

    video::IVideoDriver* driver = device->getVideoDriver();
    scene::ISceneManager* smgr = device->getSceneManager();
    gui::IGUIEnvironment* guienv = device->getGUIEnvironment();

    while (device->run()) {
        driver->beginScene(true, true, video::SColor(255, 190,190,250));
        smgr->drawAll();
        guienv->drawAll();
        driver->endScene();
   }
    device->drop();

    return 0;
}

Od tej osoby:

I podczas uruchamiania programu wywala okienko programu i program się wysypuje po czym wywala w konsoli taki błąd:

Kopiuj
Procces returned -1073741819 (0xC0000005) execution time : 3.253 s

Co zrobić aby wszystko działało, jemu działało.

kq
Moderator C/C++
  • Rejestracja:prawie 12 lat
  • Ostatnio:5 dni
  • Lokalizacja:Szczecin
0

Błąd wskazuje na to, że któryś ze zwróconych wskaźników jest nullptrem.


iks de
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 4 lata
  • Postów:97
0

A da się ten problem jakoś rozwiązać?

CZ
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 2 lata
  • Postów:231
0

Pewnie się da, sprawdź czy zmienne driver, smgr, guienv na coś wskazują

Kopiuj
if (!driver) cout << "zmianna driver jest nullptr, znaczy się coś jest nie tak z device->getVideoDriver";

jeśli nie to spróbuj dowiedzieć się która funkcja powoduje problem a potem google i szukasz czy ktoś nie miał podobnego problemu z tym.
Ewentualnie możesz użyć debugera, czasami pokazuje miejsce gdzie próbujesz coś zrobić na pustym wskaźniku.

edytowany 1x, ostatnio: czaffik

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.