.obj,.lib,.dll,.h之间的相互关系

1。.obj,.lib,.dll,.h之间的相互关系如何?使用的时候调用方式有什么不同?   
2。怎么自己做一个.lib的文件? 
3。工程文件中怎么使用obj.文件?

 

 

回答:

1.  
  obj:是CPP对应的二进制代码格式,是未经重定位的!  
  lib:是若干个obj的集合,本质与obj相同!  
  dll:是可实际运行的二进制代码,有定位代码的!  
  h:是头文件,也可算是源代码,因为当CPP中用#include时,会把包含的文件的内容在CPP中扩展开!  

 

  使用时,obj和lib是没有本质区别的,lib就是obj,使用lib地方都可以使用obj;  
  dll是动态连接库,是运行时动态加载的,而lib是静态的连接库,相当于程序编译的未经链接定位的二进制代码!(obj的一种表现形式)  
  h文件是用来编写函数(类,变量类型)原型声明的,通常dll、lib和obj的使用需要有h文件的配合,以获得二进制代码的原型声明!  
  当然使用dll时也可用GetProcAddress来配合避免使用h文件!

 

2.  
  在VC++中利用APPWIZARD可以建立一个LIB的工程,  
  file->new->projects->Win32   static   library;  
  再将你的源文件添加到该工程中即可!  
  project->add   to   projects->files;   
    
3.将obj文件添加到工程中即可!  
  project->add   to   projects->files;选择你的obj文件;

 

备注:  
  在使用DLL时也会有一个附加的lib是用来表明DLL的引出表而用的,其中的信息相当于一个obj中只有声明引出的部分,没有函数体。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值