windows下创建并使用静态链接库(.lib)
来源:互联网 发布:长庚医院网络挂号查询 编辑:程序博客网 时间:2024/06/05 01:03
开发环境:vs2008, C++
静态链接库:将函数和数据编译进一个二进制文件(通常扩展名为.lib)。如果某个工程需要使用这个静态库,则需要在编译链接可执行文件时,链接器从库中复制这些函数和数据并把它们和应用程序的其它模块组合起来创建最终的可执行文件(.EXE文件)。
一、创建静态链接库
1、创建一个新的win32工程 (工程名为LibOne)
2、选择Application type为Static library
3、编写源代码
如在工程中添加如下代码:
MyLib.h
#ifndef __MYLIB_H__#define __MYLIB_H__#include "stdafx.h"class CFirstLib{public: void SetValue(int x, int y); void GetValue(int &x, int &y);private: int m_iValuex; int m_iValuey;};#endif
MyLib.cpp
#include "stdafx.h"#include"MyLib.h"void CFirstLib::SetValue(int x, int y){ m_iValuex = x; m_iValuey = y;}void CFirstLib::GetValue(int &x, int &y){ x = m_iValuex; y = m_iValuey;}
4、编译后可生成名为LibOne.lib的静态链接库
二、使用静态链接库
假设新建一个工程LibTest,在该工程中将调用LibOne.lib的函数
1、将LibOne.lib和MyLib.h文件拷贝到LibTest工程目录下
2、在LibTest源文件中包含MyLib.h头文件,并使用#pragma comment(lib, "LibOne.lib")导入lib库
源文件LibTest.cpp为:
#include "stdafx.h"#include "MyLib.h"#include<iostream>using namespace std;#pragma comment(lib,"LibOne.lib")int _tmain(int argc, _TCHAR* argv[]){ CFirstLib mylib; mylib.SetValue(1, 3); int x = 0; int y = 0; mylib.GetValue(x, y); cout << x << endl; cout << y << endl; getchar(); return 0;}
0 0
- windows下创建并使用静态链接库(.lib)
- Windows下编译并使用libcurl.lib静态库
- windows下静态链接库的创建与使用
- windows下创建并使用动态链接库(.dll)
- 创建和使用Windows静态链接库
- 动态链接库(.dll、.lib)与静态链接库(.lib)的创建与使用
- Windows下静态链接库的使用
- Windows下静态链接库的使用
- Qt之创建并使用静态链接库
- Qt之静态链接库的创建并使用
- Qt之创建并使用静态链接库
- Windows下创建与使用静态库
- Windows环境下创建并使用动态链接库(CodeBlocks版)
- VS2013下静态链接库(lib)和动态链接库(dll)的生成与使用
- 静态链接库lib
- Lib 静态链接库
- 用VC++制作Windows下静态链接库文件(lib文件)
- 在Windows下用VC编译SNMP++静态链接库snmp_pp.lib
- 1007. Maximum Subsequence Sum
- flask框架配置email问题汇总,包括163邮箱,qq邮箱,gmail等国内外邮箱
- Ant Colony Optimization
- 无向图的双连通性
- shader内置变量和函数
- windows下创建并使用静态链接库(.lib)
- zcat,zgrep用法
- PHP用redis实现多进程队列
- Spark的join与cogroup简单示例
- linux 常用命令二 网络
- 基于spark mllib的LDA模型训练Scala代码实现
- Android中AIDL的实现使用
- Android Studio安装后的一些必要设置
- C# 实验五--平面直角坐标系