【发布时间】:2016-01-09 04:53:06
【问题描述】:
我正在使用 SDL 2 制作应用程序。我最近才开始使用 SDL_Mixer 库,这给我带来了一个问题。如果我的解释似乎含糊不清,请原谅我,因为这个错误非常令人困惑。
有时,当我关闭我的程序时,程序会崩溃。只是有时会发生这种情况。删除部分代码后,我发现导致此问题的行是对Window* 类型指针的简单delete 调用。如果我删除该删除调用,则关闭程序时不会再发生崩溃。需要注意的另一件事是崩溃发生在调用delete 之后,这意味着程序甚至没有进入~Window(),这真的很奇怪。
我注意到的另一件事是,当我从程序开头删除Mix_OpenAudio(...) 调用时,根本不会发生崩溃,无论是否存在删除调用。所以初始化 SDL_Mixer 与崩溃有关,但这只会增加更多的混乱。
我希望有人知道这里可能出现的问题,但如果我的解释过于模糊,那么我会尝试将问题复制到足够小的代码段中,以便我可以在此处发布。我不想将我的整个代码库复制到这个问题上,因为我不希望模组讨厌我。有什么想法吗?
【问题讨论】:
标签: c++ pointers sdl sdl-2 sdl-mixer