Я использую библиотеку, которая обрабатывает множество задач, связанных с разработкой игры. Он поставляется с скомпилированными библиотечными файлами для статической компоновки и динамической компоновки. Простите мою близорукость, но я спрашиваю: зачем кому-то использовать библиотеки DLL поверх статических библиотек, когда они доступны? Если использовать библиотеки DLL, похоже, что это может привести к множеству программ, например, к потерям библиотек, к потерям, что делает дистрибутив менее удобным. Теоретически это может увеличить время загрузки программы. Единственное практическое преимущество, которое я вижу в использовании DLL, заключается в том, что, возможно, несколько программ могут использовать библиотеки, тем самым уменьшая размер программ.Что такое DLL вместо статических библиотек
ответ
Вы правы в том, что да, библиотеки DLL могут совместно использоваться несколькими программами. Возьмем, к примеру, файл kernel32.dll, который загружается в каждое пользовательское приложение Windows. Windows может совместно использовать страницы памяти kernel32.dll между всеми запущенными приложениями, но если бы она была статически связана, каждое приложение имело бы дубликат одной и той же кодовой страницы.
Microsoft имеет краткий обзор преимуществ использования библиотеки DLL здесь: http://msdn.microsoft.com/en-us/library/windows/desktop/ms681938(v=vs.85).aspx
this->
... тем самым уменьшая размер программ.
Он также позволяет третьим сторонам обновлять/исправлять функциональные возможности без необходимости перекомпилировать или освободить зависимое программное обеспечение. Что еще более важно ...
- 1. .NET-эквивалент статических библиотек?
- 2. Что такое правильное соглашение об именах для библиотек MSVC, статических библиотек и библиотек импорта
- 3. Статические элементы статических библиотек
- 4. Создание статических библиотек
- 5. Что использовать вместо статических переменных
- 6. Что такое Native DLL?
- 7. Что такое DLL GINA
- 8. Что такое захват dll?
- 9. Что такое dll interop?
- 10. Что такое сторонняя DLL?
- 11. Инкапсуляции статических библиотек в динамически подключаемой библиотеке (DLL)
- 12. iOS: сбор статических библиотек
- 13. ctypes для статических библиотек?
- 14. Зависимость от статических библиотек
- 15. виртуальные функции статических библиотек
- 16. Смешивание статических библиотек и разделяемых библиотек
- 17. Установка библиотек DLL-библиотек .NET
- 18. Что такое «Вместо« Триггеров »?
- 19. C++ Связывание статических библиотек с динамической библиотекой
- 20. Связывание статических библиотек OpenCV в Eclipse Windows
- 21. Смешивание общих и статических библиотек
- 22. Размер статических библиотек, созданных Xcode
- 23. Построение OpenCV как статических библиотек
- 24. Использование статических библиотек в Xcode
- 25. Связывание объектов и статических библиотек
- 26. Смешивание статических и динамических (общих) библиотек?
- 27. Реализация статических библиотек в iPhone
- 28. два способа связывания статических библиотек
- 29. Что такое un/managed DLL? Что такое un/управляемый код?
- 30. Сконструированные C++ исполняемые только из статических библиотек
Не думать об этом. Большинство обновлений программного обеспечения сделано таким образом? – newprogrammer