SDL_Init() without subsystem initialization

Is it ok to call SDL_Init(0)?

I’m in process of creating my modular 3D engine and I’d like to separate the
initialization of different SDL subsystems to corresponding modules in my
engine.

This would happen like following:

Call SDL_Init(0) when the engine starts. Then when the GFX module is started
it would call SDL_InitSubSystem(SDL_INIT_VIDEO), Audio module would
SDL_INIT_AUDIO etc.

It seems to work (the engine runs) but is it good programming practice (or
whatever)?

  • Nurtsi