Estoy usando las funciones SDL sin que se defina SDL_main. ¿Eso está bien?

ese es mi código:

Lib.h

#ifdef ExportLib
    #define Lib __declspec(dllexport)
#else
    #define Lib __declspec(dllimport)
#endif
extern void Lib Launch();

Lib.cpp

#include <SDL/SDL.h>
#include "Lib.h"
void Launch() {
    SDL_Init(SDL_INIT_EVERYTHING);
    SDL_Window* win = SDL_CreateWindow("Untitle", 100, 100, 400, 400, 0);
    SDL_DestroyWindow(win);
    SDL_Quit();
}

Construyo este código en una biblioteca estática. Luego creé un nuevo archivo fuente y usé esta biblioteca.

main.cpp

#include "Lib.h"

int main() {
    Launch();
    return 0;
}

Finalmente, compilo main.cpp usando mi biblioteca estática sin que se defina SDL_main y las dependencias de SDL. Eso funciona bien, aparece la ventana.

¿Pero está realmente bien hacerlo? ¿Qué funcionalidades perdí al hacerlo?

Respuestas a la pregunta(2)

Su respuesta a la pregunta