Возможно, вы создаете SDL_Surface
s для bgSurface
и fgSurface
до вызова SDL_Init
...
Вот почему у меня есть вызов SDL_Init
в конструкторе класса, сам по себе (и SDL_Quit
в конструкторе). Таким образом, вы можете просто сделать Manager
частным подклассом этого:
class Manager : private SDLInitializer
{ /* */ }
А в конструкторе:
Manager::Manager() :
SDLInitializer(SDL_INIT_VIDEO),
/* */
И поскольку базовые классы инициализируются перед переменными-членами, все идет хорошо!