静态链接库

    在windows的发展过程中在经历了“无库-静态链接库-动态链接库”的时代。

     静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 DLL 文件。静态链接库和动态链接库的另外一个区别在于静态链接库中不能再包含其
他的动态链接库或者静态库,而在动态链接库中还可以再包含其他的动态或静态链接库。

如图 1,在 VC++6.0 中 new 一个名称为 libTest 的 static library 工程 ,并新建 lib.h和 lib.cpp 两个文件,lib.h 和 lib.cpp的源代码如下:


 

 

               #include <stdio.h>
               #include "..\lib.h"
               #pragma comment( lib, "..\\debug\\libTest.lib" )    //指定与静态库一起连接
               int main(int argc, char* argv[])
             {
                printf( "2 + 3 = %d", add( 2, 3 ) );
             }

 
   编译这个工程就得到了一个.lib 文件,这个文件就是一个函数库,它提供了 add 的功能。将头文件和.lib 文件提交给用户后,用户就可以直接使用其中的 add 函数了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值