VS 2022 C++ 创建静态库并调用
1. 创建静态库
先创建一个空c++项目 (例如:MathLibrary.lib)。
更改项目属性:
Configuration Properties -> General -> Configuration Type -> Static library (.lib)
更改C++标准11:
Configuration Properties -> General -> C++ Language Standard -> ISO C++17 Standard (/std:c++17)
在Source Files文件夹下新建.cpp文件:
// MathLibrary.cpp
// compile with: cl /c /EHsc MathLibrary.cpp
// post-build command: lib MathLibrary.obj
#include "MathLibrary.h"
namespace MathLibrary
{
double Arithmetic::Add(double a, double b)
{
return a + b;
}
double Arithmetic::Subtract(double a, double b)
{
return a - b;
}
double Arithmetic::Multiply(double a, double b)
{
return a * b;
}
double Arithmetic::Divide(double a, double b)
{
return a / b;
}
}
在Header Files文件夹下新建.h文件:
// MathLibrary.h
#pragma once
namespace MathLibrary
{
class Arithmetic
{
public:
// Returns a + b
static double Add(double a, double b);
// Returns a - b
static double Subtract(double a, double b);
// Returns a * b
static double Multiply(double a, double b);
// Returns a / b
static double Divide(double a, double b);
};
}
右键选择项目,然后点击build,这样静态库就生成好了。
2. 调用静态库
在项目中调用静态库过程:
- 在下面的项目属性中添加 .h 文件所在路径
Configuration Properties -> C/C++ -> General -> Additional Include Directories - 在下面的项目属性中添加 .lib 文件所在路径
Configuration Properties -> Linker -> General -> Additional Library Directories - 在下面的项目属性中添加 .lib 文件名(例如:MathLibrary.lib)
Configuration Properties -> Linker -> Input -> Additional Dependencies
自此就可以直接在代码中直接引用头文件了。
文章参考了如下链接:
https://learn.microsoft.com/en-us/cpp/build/walkthrough-creating-and-using-a-static-library-cpp?view=msvc-170