详解生成静态链接库lib文件和调用

来源:互联网 发布:软件巡检方案 编辑:程序博客网 时间:2024/04/20 09:37

一个解决方案很复杂的时候,有很多的.h文件和.lib文件,很容易混乱。将一个解决方案分成多个工程,有的工程用来生成静态链接库.lib或者动态链接库.dll,有的用来做主函数进行调用,思路清晰,用起来也很方便。

本节讲如何生成静态链接库。

1.建立一个静态链接库

首先新建一个win32控制台应用程序,点击确定。点击“下一步”。选择“静态库”选项。完成即可。(本文中该项目库名称为lib)



如果你新建的是一个windows应用程序,可以右击点击属性,在“配置类型”中点击“静态库”


2编辑静态库内容

添加.h文件和.cpp文件。如下图,右击lib文件,添加新建即可。


编辑内容:

add.h

class add{public:int add2num(int a,int b);};

add.cpp

#include "stdafx.h"#include "add.h"#include <iostream>int add::add2num(int a,int b){std::cout<<"调用成功"<<std::endl;return a+b;}
要编译成功

3 建立exe文件

右击解决方案,添加新项目(本文中为abc),win32应用程序。建好后


4 调用和配置

----在abc中要引用lib文件,右击点击“引用”,添加新引用

----abc的头文件要加lib中你要引用的.h头文件。

----abc设为启动项



----abc的头文件要加lib中你要引用的.h头文件。

// abc.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include "..//dll/add.h"int _tmain(int argc, _TCHAR* argv[]){add a;int b = a.add2num(4,5);return 0;}


#include "..//dll/add.h",此时dll工程和abc工程同在一个文件夹内。此时只需要添加头文件即可,比较方便

或者另一种方式:

我可以把add.h头文件和lib.lib库文件复制我要调用的abc目录下。(lib文件在debug里),然后添加如下头文件

#pragma comment(lib,"lib.lib")
#include "add.h"

当你新建一个项目,需要调用我刚生成的lib时,也可以采用这种方法。

----abc设为启动项,右击设为启动项。调试即可


完成

0 0