In this case the 'game' object works fine being allocated on the stack in main(). No need to add indirection unless there's a compelling reason otherwise.Wrong. main doesn't need to be used to display the image on the screen. You can call SDL_Flip (and any other SDL functions) within any other class you write if you so desire.
And by adding the Game class that basically means that i have to create a image of all i want to see in the game class and then send it to main to be displayed? right?
Oh, ok. Then what would you recommend? To screen out all the graphics in the Game class or send it to main to do the job.
If you recommend the first choice then what is it exactly that main does more than create the window for the game to be shown in and run the main game loop?
Is it even necessarily to have a Game class?
I am of course going to split up every part of the game as much as i can for the simplicity it brings.