Hola amigos, Tengo un inconveniente en SDL con el metdo SDL_FreeSurface que libera las imagenes cargdas, estoy trabajando con visual Studio y m tira un error de acceso invalido en memoria(adjunto imagen de error) les cuento que creo un array d Sprites que tienen un metodo finalize q llama a SDL_FreeSurface, he mirado paso a paso como envia cada uno d los elementos del array y lo hace correctamente pero igual me tira el error en ese metodo de SDL. a ver si me pueden tirar un salvavidas y sino voy a tener que dejar sin liberar la memoria jeje, que no creo que sea lo mejor. Saludos y desde ya muchas gracias( adjunto el codigo)
Metodo de la clase CSprite q libera la imagen:
void CSprite::finalize()
{
for (int i = 0; i < cont; i++)
sprite[i].unload(); //El sprite puede tener varios frames cargados por eso es el for
}
Metodo que llama a SDL_FreeSurface: (De otra clase frame que guarda la imagen)
void CFrame::unload()
{
SDL_FreeSurface(img); //img es del tipo SDL_Surface y es quien almacena la imagen
}
Este es el codigo para finalizar los sprites:
for (int i = 0; i < 5; i++)
menu[i].finalize(); //menu es del tipo CSprite