VS创建和使用Cpp静态链接库教程

⌚Time: 2022-03-19 23:28:05

👨‍💻Author: Jack Ge

创建

打开vs2005。点击文件,新建,项目,选择win32控制台应用程序,写好名字后点确定

选择应用程序类型,静态库,点击完成

此静态库包含一个取两个数最大值的功能函数

添加一个函数头文件,右键点击头文件文件夹,添加,新建项

选择头文件,设置名字,点确定

右键点击源文件文件夹,添加,新建项,c++文件,添加一个实现函数的源文件

编辑代码:

a.h


#pragma once

int max_number(int,int);

a.cpp


int max_number(int num1,int num2){

    return num1>num2?num1:num2;

}

对项目进行编译

找到项目文件夹的debug目录下(编译的是debug版本),可以发现已经生成了静态链接库libaaa.lib


使用

打开vs2005,新建一个项目

点完成

将库的头文件复制到项目的源文件目录下

同时在项目中包含该头文件,右键单击头文件文件夹,添加,现有项

选择静态库头文件

创建主程序源文件,对源文件文件夹右键,添加,新建项

创建一个c++源文件main.cpp

编辑main.cpp,调用静态库的功能函数

main.cpp


#include"a.h"

#include<iostream>

#include<windows.h>

int main(){

    std::cout<<"3与4之中,最大的数是:"<<max_number(3,4)<<std::endl;

    system("pause");

    return 0;

}

之后就是重要的添加静态库libaaa.lib的环节了,让编译器能够使用此静态链接库。有两种方法

方法一:

点击项目,属性

链接器,常规,附加库目录,添加静态库libaaa.lib所在目录

在输入,附加依赖项里,添加静态库名称libaaa.lib

点击确定保存

点击绿三角运行程序

方式二:

在使用静态库的源文件中,加入静态库路径


#pragma comment(lib,"C:\\XXX\XXX\libaaa.lib")

main.cpp


#include"a.h"

#include<iostream>

#include<windows.h>

#pragma comment(lib,"libaaa.lib")//添加这句

int main(){

    std::cout<<"3与4之中,最大的数是:"<<max_number(3,4)<<std::endl;

    system("pause");

    return 0;

}

之后同样编译运行即可