第二十九篇 章 DLL LIB函式库开发 C++ Builder 简体中文版.pptVIP

第二十九篇 章 DLL LIB函式库开发 C++ Builder 简体中文版.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二十九篇 章 DLL LIB函式库开发 C++ Builder 简体中文版.ppt

29-2. LIB静态函式库开发 范例29-5:Lib静态函式库的应用 范例说明 范例29-5我们将利用范例29-1、29-2、以及29-4这三个不同的library来实作出一个程序,虽然这三个library功能都一样,但是却有着不同的开发方式,希望能借着这个范例让读者更清楚我们这一章的宗旨。 在范例29-5的实作过程中,其实跟范例29-3几乎一模一样,所以我们就不在一步一步的慢慢讲解,直接列出程序代码和结果出来,如果对于范例29-5的实作过程中有不清楚的,只要往回看一下范例29-3的步骤,把要Import的Library从原本的两个再增加一个,user.h改一改,这样就差不多完成了。 29-2. LIB静态函式库开发 范例29-5:主要程序代码(user.h) int __declspec(dllexport) __stdcall BCBType_Count(int m, int n); int __declspec(dllexport) __stdcall VCType_Count(int m, int n); long LIB_Count(int s, int e); 29-2. LIB静态函式库开发 范例29-5:主要程序代码(main.cpp) #include user.h // void __fastcall TForm1::Button1Click(TObject *Sender) { int m, n; m = Edit1-Text.ToInt(); n = Edit2-Text.ToInt(); Edit5-Text = BCBType_Count(m, n); } // void __fastcall TForm1::Button2Click(TObject *Sender) { int m, n; m = Edit3-Text.ToInt(); n = Edit4-Text.ToInt(); Edit6-Text = BCBType_Count(m, n); } // void __fastcall TForm1::Button3Click(TObject *Sender) { int m, n; m = Edit7-Text.ToInt(); n = Edit8-Text.ToInt(); Edit9-Text = LIB_Count(m, n); } 29-2. LIB静态函式库开发 范例29-5:Lib静态函式库的应用 执行结果 本章习题 设计一个应用程序使用动态Library。 设计一个应用程序使用静态Library。 * * 第二十九章 DLL / LIB函式库开发 当我们开发程序到一个阶段之后,我们一定会希望各个Component的程序代码可以分开的越清楚越好。而这一章最主要就是要告诉各位读者,我们常在Windows系统中看到的dll或是lib的档案该怎么实作?做出这样的library我们又该如何运用?为什么使用dll或是lib有利于我们开发程序?以上这些疑问都将会在这一章中得到解答。 大纲 29-1. DLL动态函式库开发 29-2. LIB静态函式库开发 本章习题 29-1. DLL动态函式库开发 相信各位一定常常会遇到一种情况,就是常常在执行某些应用程序时,系统会出现『无法找到动态链接库xxx.dll』,接着这个应用程序将会在你按下确定时一起被关闭。我们这一小节要提到的东西就是这个『DLL』。 到底dll是什么东西?这个东西他又有什么样的用途呢?DLL的原文意思是『Dynamic Link Library』,也就是动态连结函式库。一般小型的应用程序很少会用到这种所谓的DLL动态函式库,但是对于一个大型应用程序(如BCB、Office、Windows等等),使用DLL动态函式库可以降低许多Memory的使用量,也有助于各个Component的独立,更有利于后续版本的维护及开发。 29-1. DLL动态函式库开发 假设某个应用程序有使用到某个dll档案,在开启这个应用程序时,应用程序并不会马上将dll这个函式库load进入Memory中,只是将『加载点』纪录下来供需要时才使用。若是在这次执行应用程序的过程中,都不需要执行到dll函式库内所提供的功能,那在这次执行程序的过程中就减少了一个dll的Memory空间!若是有需要这个dll所提供的功能时,应用程序才会实时的将这个dll所需要的资源load到Memory中,让使用者使用。 DLL函式库还有一个关于内存方面的特点,那就是如果有超过两个以上的应用程序使用到同一个dll,在内存中并不会吃掉两倍以上的内存空间,不管几个程序会用到,内存中永远就只有放这么一份dll函式库的资源。根据上面的说法,DLL真的可以降低执行的

文档评论(0)

youngyu0329 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档