[DLL]创建和使用静态库Lib
来源:互联网 发布:保税货物需要上传数据 编辑:程序博客网 时间:2024/06/10 03:06
创建静态库项目
1.创建静态项目MathFucsLib:
选择 win32控制台应用程序->输入MathFuncsLib项目名称->下一步->选择静态库;取消默认的预编译头->完毕
2.向静态库添加类MyMathFuncs:
#pragma once//MathFuncsLib.h namespace MathFuncs{class MyMathFuncs{public:static double Add(double a,double b);static double Substract(double a,double b);static double Multiply(double a,double b);static double Divide(double a,double b);};}//MathFuncsLib.cpp#include "MathFuncsLib.h" #include <stdexcept>using namespace std;namespace MathFuncs{double MyMathFuncs::Add(double a,double b){return a+b;}double MyMathFuncs::Substract(double a,double b){return a-b;}double MyMathFuncs::Multiply(double a,double b){return a*b;}double MyMathFuncs::Divide(double a,double b){if (b==0){throw new invalid_argument("b cannot be zero!");}return a/b;}}
3.确认生成的是lib文件:项目,属性->配置属性,常规->配置类型:改为静态库(.lib);编译生成MathFuncsLib.lib
创建引用静态库的控制台应用程序
1.创建引用静态库的控制台应用程序:
在同一个解决方案中添加项目MyExecRefsLib:选择 win32控制台应用程序->输入MyExecRefsLib项目名称->下一步->选择控制台应用程序;取消默认的预编译头->完毕
2.在应用程序中使用静态库的功能
2.1添加头文件目录,以便程序中包含的头文件存在(即可以找到):
项目,属性->C/C++->常规->附加包含目录:..\MathFuncsLib
或者是:项目属性->VC++目录->包含目录:..\MathFuncsLib
2.2添加.lib文件引用
项目,引用->通用属性->框架和引用->添加引用->会出现MathFuncsLib的项目名称和项目目录->确定
或者是,添加库目录及附加库:项目,属性->连接器->常规->附加库目录:如$(OutDir)
项目,属性->连接器->输入->附加依赖项:MathFuncsLib.lib
3.程序使用
#include <iostream>using namespace std;#include "MathFuncsLib.h" int main(){double a=7.4;int b=99;cout<<"a + b="<<MathFuncs::MyMathFuncs::Add(a,b)<<endl;cout<<"a - b="<<MathFuncs::MyMathFuncs::Substract(a,b)<<endl;cout<<"a * b="<<MathFuncs::MyMathFuncs::Multiply(a,b)<<endl;cout<<"a / b="<<MathFuncs::MyMathFuncs::Divide(a,b)<<endl;return 0;}
4.设置MyExecRefsLib为启动项目,按Ctrl+F5
官网实例
- [DLL]创建和使用静态库Lib
- Windows静态库和动态库的创建和使用 (lib vs dll)
- Windows静态库和动态库的创建和使用 (lib vs dll)
- 创建和使用静态连接库'lib'、动态连接库'dll'
- 创建和使用lib静态库
- 创建和使用静态库(.lib)
- 动态链接库(.dll、.lib)与静态链接库(.lib)的创建与使用
- vs2010创建和使用动态链接库DLL和lib
- Lib和Dll工程创建和使用
- 如何创建和使用动态链接(dll)和静态链接(lib),全面总结
- VC.Net中创建与使用静态链接库(lib)和动态链接库(dll),以及它们的区别.
- VC.Net中创建与使用静态链接库(lib)和动态链接库(dll),以及它们的区别
- VC.Net中创建与使用静态链接库(lib)和动态链接库(dll),以及它们的区别
- [DLL]创建和静态使用动态链接库dll
- 静态库Lib和动态库Dll
- 静态库Lib和动态库Dll
- 静态库Lib和动态库Dll
- 静态库Lib和动态库Dll
- js 弹出层的方法
- 一个线程交替运行的考题
- ASP.NET多文件批量打包下载
- android屏幕 单位转换
- cocos2d-x跨android&ios平台开发入门教程
- [DLL]创建和使用静态库Lib
- Java 十进制 转 二进制、八进制、十六进制
- Myeclipse_Struts+Hibernate
- for循环占用的指令周期问题
- 未来 Firefox 将不自动运行所有插件
- C语言中的柔性数组结构
- Linux下Fork与Exec使用
- 远程访问virtualbox当中的osx的方法
- Versions 配合 Xcode 4.5 的 FileMerge