VS 2022 C++ 创建静态库并调用

本文介绍了如何在VS2022中创建C++静态库,包括设置项目属性为静态库类型,定义函数,创建头文件,然后编译生成.lib文件。接着详细讲解了如何在其他项目中调用这个静态库,涉及添加头文件路径,指定.lib文件位置及名称等步骤。
摘要由CSDN通过智能技术生成

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. 调用静态库

在项目中调用静态库过程:

  1. 在下面的项目属性中添加 .h 文件所在路径
    Configuration Properties -> C/C++ -> General -> Additional Include Directories
  2. 在下面的项目属性中添加 .lib 文件所在路径
    Configuration Properties -> Linker -> General -> Additional Library Directories
  3. 在下面的项目属性中添加 .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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值