一个困扰很久的问题 VC中重用库,会用到 *.h,*.dll,*.lib而且,要编译的话,三者缺一不可,而且一直不能区分dll,lib的区别在VB中一般只要用到dll就行了,没有VC中的lib,vc中的*.h,相当于VB中TLB,但VC要编译,一定要用到lib,不知道这些编译的原理,是怎么进行连接的呀,dll,lib 扮演了什么角色呀请高手帮忙答疑!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 lib是链接时用到的,提供符号表 dll是运行时用到的,提供内容 *.h,*.dll,*.lib具体来奖是:*.h是编译用,编译只是看不是认识你代码里面所有的东西。*.lib是连接用,Link, 1 *.lib有2种,一种动态的,一种静态的,动态的只记录了函数名和接口,没有代码, 而静态的里面是包括了代码的,在link是就拷贝*.lib的代码到exe中了,这样执行时是不需要dll的,*.dll包括了代码。根据exe中的import Table动态加载,然后运行。 请教QQ桌球截图的问题? 如何设计线程中的死循环 在切分视图中,如何使控件随分割条的移动改变大小? 为什么有些类的虚函数不在msdn中类说明中列出来? OnInitDlg()是在何时调用的?CDialog d1;还是 int resp=d1.DoModal(); 为什么hook有那么多问题,都不知道是怎么回事儿。 请问如何实现这个效果? 你认为最经典的Socket编程类书籍是什么? C++的路在何方 非常简单的驱动代码,老是蓝屏,求解 how to use GetInterfaceHook 关于CSpinCtrl控件的问题!
dll是运行时用到的,提供内容
具体来奖是:
*.h是编译用,编译只是看不是认识你代码里面所有的东西。
*.lib是连接用,Link, 1 *.lib有2种,一种动态的,一种静态的,
动态的只记录了函数名和接口,没有代码, 而静态的里面是包括了代码的,
在link是就拷贝*.lib的代码到exe中了,这样执行时是不需要dll的,
*.dll包括了代码。根据exe中的import Table动态加载,然后运行。