欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在VS中创建和使用静态库

程序员文章站 2022-03-22 14:41:15
...

网址:
https://docs.microsoft.com/en-us/cpp/build/walkthrough-creating-and-using-a-static-library-cpp?view=vs-2017

1. 创建一个静态库项目

  1. 在菜单栏上,选择“文件” ->“新建” ->“项目”
  2. 展开“已安装”->“Visual C++”,选择“静态库”
  3. 修改名称,点击确定以创建项目。
    在VS中创建和使用静态库

2. 向静态库添加类

  1. 在解决方案资源管理器中打开MathFuncsLib项目的快捷菜单,然后选择“ 添加” ->“ 新建项”。选择“ 头文件(.h)”。指定头文件的名称(例如MathFuncsLib.h),然后选择“ 添加”按钮。显示头文件。

  2. 添加头文件代码`

#pragma once
 
namespace MathFuncs
{
class MyMathFuncs
{
public:
// 返回 a + b
static double Add(double a, double b);
// 返回 a - b
static double Subtract(double a, double b);
// 返回 a * b
static double Multiply(double a, double b);
// 返回 a / b
static double Divide(double a, double b);
};
}

  1. 选择“添加”->“新建项”,选择“C++文件(.cpp)”,
    指定源文件的名称(例如MathFuncsLib.cpp)
#include "stdafx.h"
#include "MathFuncsLib.h"
 
namespace MathFuncs
{
// 返回 a + b
static double Add(double a, double b)
{
return a + b;
 
}
// 返回 a - b
static double Subtract(double a, double b)
{
return a - b;
}
// 返回 a * b
static double Multiply(double a, double b)
{
return a * b;
}
// 返回 a / b
static double Divide(double a, double b)
{
return a / b;
}
 
}

  1. 在菜单栏上,选择 “生成”->“生成解决方案”,编译器会创建一共可供其它程序使用的静态库。
    在VS中创建和使用静态库

3.1 在同一个解决方案下创建引用静态库的C++项目

  1. 右击“解决方案”,选择“添加”->新建项目
    在VS中创建和使用静态库
    或 在菜单栏,选择“文件”->“新建”->“项目”,将解决方案选择为“添加到解决方案”
    在VS中创建和使用静态库
  2. 新建C++项目,命名,点击确定
  3. 右击项目名称,比如MyExecRefsLib,选择“添加”->“引用”
    在VS中创建和使用静态库
    在“项目”选项卡上,选中“ MathFuncsLib”复选框,然后选择“ 确定”按钮。
    在VS中创建和使用静态库
  4. 要引用MathFuncsLib.h头文件,必须修改包含的目录路径。
    在菜单栏,选择“项目”,在MyExecRefsLib的“ 属性页”对话框中,展开“ 配置属性”节点,再展开“ C / C ++”节点,然后选择“ 常规”。在“附加包含目录”,MathFuncsLib目录的路径,或浏览它【浏览到项目路径下即可】。
    在VS中创建和使用静态库
  5. 右击项目,点击 “项目设为启动项目”,将该项目**
    在VS中创建和使用静态库
  6. 通过#include "MathFuncsLib.h"在代码中包含标头,在此应用中使用该类。
#include <iostream>
 
#include "MathFuncsLib.h"
 
using namespace std;
 
int main()
{
double a = 7.4;
int b = 99;
 
cout << "a + b = " <<
MathFuncs::MyMathFuncs::Add(a, b) << endl;
cout << "a - b = " <<
MathFuncs::MyMathFuncs::Subtract(a, b) << endl;
cout << "a * b = " <<
MathFuncs::MyMathFuncs::Multiply(a, b) << endl;
cout << "a / b = " <<
MathFuncs::MyMathFuncs::Divide(a, b) << endl;
system("pause");
return 0;
}

3.2 在不同解决方案下创建C++项目

https://zhidao.baidu.com/question/1957071504113326380.html
如何链接便有好的静态库文件

  1. 在菜单栏,选择“文件”->“新建”->“项目”,将解决方案选择为“创建新解决方案”

  2. 在菜单栏,选择“项目”->“属性页”,设置包含目录、库目录,添加附加依赖项

2.1 添加工程的头文件目录:
VC++,设置“包含目录”:C:\Users\Administrator\source\repos\MathFuncsLib\MathFuncsLib
2.2 添加文件引用的lib静态库路径
VC++下,设置“库目录”:C:\Users\Administrator\source\repos\MathFuncsLib\Debug
2.3 链接器 -> 输入 ->附加依赖项【加上.lib的文件名】
MathFuncsLib.lib

#include "pch.h"
#include <iostream>
#include "MathFuncsLib.h"
using namespace std;
 
int main()
{
double a = 7.4;
int b = 99;
 
cout << "a + b = " <<
MathFuncs::MyMathFuncs::Add(a, b) << endl;
cout << "a - b = " <<
MathFuncs::MyMathFuncs::Subtract(a, b) << endl;
cout << "a * b = " <<
MathFuncs::MyMathFuncs::Multiply(a, b) << endl;
cout << "a / b = " <<
MathFuncs::MyMathFuncs::Divide(a, b) << endl;
 
system("pause");
 
return 0;
 
}
相关标签: Visual Studio