The Kool Aid: “Using dynamic linking instead of static linking offers several advantages. DLLs save memory, reduce swapping, save disk space, upgrade easier, provide after-market support, provide a mechanism to extend the MFC library classes, support multilanguage programs, and ease the creation of international versions.” |
Lib-This is a code “bundle” inside your .exe |
DLL-This is a stand alone unit of code. |
Performance | |
|
|
Compiled Size | |
|
|
ALM | |
|
|
Operation | |
|
|
Misc. | |
|
|
Architectural Consideration | |
|
|
Legal Implications | |
|
|
Security | |
|
|
If you are developing for windows 8 (win8) then the quick answer is use a DLL
If your Developing for iOS then use a Lib
References:
- http://stackoverflow.com/questions/140061/when-to-use-dynamic-vs-static-libraries
- http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/830bf2ad-3b42-43e2-963c-c0566b991f89/
- http://www.differencebetween.net/technology/difference-between-lib-and-dll/
- http://en.wikipedia.org/wiki/Dynamic-link_library
- http://en.wikipedia.org/wiki/Static_library
- http://cboard.cprogramming.com/cplusplus-programming/30841-lib-vs-h-vs-dll.html
- http://msdn.microsoft.com/en-us/library/1ez7dh12(v=vs.110).aspx