C++应用程序在Windows下的编译、链接:第三部分 静态链接(二)

来源:互联网 发布:java中单例设计模式 编辑:程序博客网 时间:2024/05/29 16:39

原地址:http://www.cnblogs.com/wolf-lifeng/p/3191299.html

动态链接库的创建流程如下图所示:

 在系统设计阶段,主要的设计内容包括:类结构的设计以及功能类之间的关系,动态链接库的接口。在动态链接库中,包含两类函数:一类是内部函数,一类是外部函数。内部函数只能在动态链接库的内部使用,不能被动态链接库以外的模块调用;外部函数是该动态链接库的接口,可以被外部模块调用。

为了使外部函数能够被系统外的模块调用,在进行C++代码编写的时候,必须对外部函数执行导出。导出的级别有两种:函数级别的导出和类级别的导出。在函数级别的导出中,只将该函数导出;在类级别的导出中,将这个类所属的函数和数据导出。在进行导出的时候,使用关键字“_declspec(dllexport)”。

如果外部模块要调用动态链接库中的函数,那么必须对该函数执行导入。导入的级别有两种:函数级别的导入和类级别的导入。在函数级别的导入中,只能将该函数导入;在类级别的导入中,可以将整个类所属的函数和数据导入,在进行导入的时候,使用关键字“_declspec(dllimport)”。

在使用Visual Studio建立动态链接库的时候,首先是创建工程项目,并且选择项目类型为动态链接库类型,即:Application type的DLL选项。Static Library表示创建静态链接库,Windows application表示创建到窗口的可执行程序,Console application表示创建带命令行的可执行程序。具体情况如下图所示:

0 0
原创粉丝点击