Что в SDL.dll? - PullRequest
       31

Что в SDL.dll?

4 голосов
/ 06 сентября 2010

Я новичок в SDL, и мне просто любопытно, почему sdl использует статические и динамические библиотеки? Я имею в виду, что функции в sdl.dll, и почему это связано динамически, а не статически? Благодарю.

1 Ответ

5 голосов
/ 06 сентября 2010

SDL.dll содержит реализации всех функций, которые вы используете из SDL, таких как SDL_Init() и SDL_SetVideoMode(). Он динамически связан, чтобы обеспечить возможность замены библиотеки новой версией без нарушения совместимости с существующими приложениями - интерфейс SDL меняется не так часто, как реализация . Динамические библиотеки обеспечивают разделение между интерфейсом и реализацией за счет того, что требуется для их динамической загрузки: поиск файла, загрузка его, жалоба, если она недоступна и т. Д.

Приложение более модульное с использованием динамических библиотек, и исполняемый файл будет иметь тенденцию оставаться маленьким. Статически можно ссылаться на SDL, при этом размер исполняемого файла будет включать (скромный) размер библиотеки SDL, а для обновления до новой версии SDL потребуется перекомпиляция приложения.

...