   Game engine (allegro)
  I am writing a game engine for allegro (in c++) and am trying to decide if I should put all my functions from a class into the same header file and only put the inline functions in the same file and put the out-of-line functions in a cpp file. What should I do. And why?   
  The latter. If you'd have all your code in the header, every file that includes that header will need to be recompiled whenever you make changes.   