技术CTO-关注编程入门知识,提供编程入门教程

您的位置: 首页 > 程序开发 > c/c++ > 正文

vs2012生成动态库的时候,为什么不能生成lib文件啊?

来源: 技术CTO 阅读:

lib文件如何生成啊?

没有lib文件,动态库如何使用啊?

你解决了没?解决的话可以告诉我一声啊?谢谢。
搜“dll生成lib”
C++ 的动态库是DLL 静态库才是Lib 
引用 3 楼 zxx0842 的回复:
C++ 的动态库是DLL 静态库才是Lib 


动态库也有.lib文件,称为引入库文件。
没用过vs2012,不过没有.lib,也可以通过动态加载LoadLibrary的方式使用DLL。
LIB有两种,一种是静态库,比如C-Runtime库,这种LIB中有函数的实现代码,一般用在静态连编上,它是将LIB中的代码加入目标模块(EXE或者DLL)文件中,所以链接好了之后,LIB文件就没有用了。一种LIB是和DLL配合使用的,里面没有代码,代码在DLL中,这种LIB是用在静态调用DLL上的,所以起的作用也是链接中用,链接完成了,LIB也没用了。至于动态调用DLL的话,根本用不上LIB文件。 目标模块(EXE或者DLL)文件生成之后,就用不着LIB文件了
所以我说的一点没错。即使lib是动态的也是去调用DLL.为什么不直接用 DLL
有了导出类或函数才会有lib,如果只有导出函数,要加上.def文件
新建Win32 DLL项目的时候有“导出符号”这个选项的,勾选之后才能导出lib文件
要不然就只能自己写def文件,或者dumpbin命令生成def文件
“VS 2012生成动态库的时候,不能生成LIB”,这事貌似没听说过啊。

^_^ 如果您热爱技术、热爱编程,想与更多的朋友一起交流学习,欢迎加入本站官方QQ群:345733473 ^_^