个人备案网站做企业会怎样,沧州做网站优化哪家公司便宜,比特币做游戏币的网站,郑州做网站的外包公司有哪些目录 一.前言二.生成静态链接库三.使用静态链接库四.其他 一.前言
这篇文章简单讨论一下VS如何生成和使用C静态链接库#xff0c;示例使用VS2022环境。
二.生成静态链接库
先创建C项目-静态库 然后将默认生成的.h和.cpp文件清理干净#xff0c;当然你也可以选择保留。
然… 目录 一.前言二.生成静态链接库三.使用静态链接库四.其他 一.前言
这篇文章简单讨论一下VS如何生成和使用C静态链接库示例使用VS2022环境。
二.生成静态链接库
先创建C项目-静态库 然后将默认生成的.h和.cpp文件清理干净当然你也可以选择保留。
然后创建需要的.h和.cpp文件。 看下代码
//lib_demo.h#ifndef LIB_DEMO_H
#define LIB_DEMO_H#includestringclass LibDemo
{
public:LibDemo(void) default;~LibDemo(void) noexcept default;void Print(const std::string msg);
};#endif // !LIB_DEMO_H//lib_demo.cpp#includelib_demo.h#includeiostreamvoid LibDemo::Print(const std::string msg)
{std::cout msg: msg std::endl;
}很简单的代码就是提供一个打印字符串的接口。编译一下但是这个时候你会发现项目不能编译。
报错 这是因为清理了生成的默认文件需要在项目属性-C/C±预编译头-预编译头改为“不使用预编译头”就可以了。 编译生成了lib_demo.lib这样静态链接库生成就是完成了。
三.使用静态链接库
我们看一下怎么使用静态链接库创建C项目-空项目编写exe程序这个exe程序会调用静态链接库。 看下代码
//main.cpp#includestring#includelib_demo.hint main(int argc, char* argv[])
{LibDemo libDemo;std::string strMsg(exe_demo);libDemo.Print(strMsg);return 0;
}其实就是很简单的代码。
执行结果 需要注意的是 需要在项目属性-C/C±常规-附加包含目录设置项目包含的头文件所在位置。 需要在项目属性-链接器-常规-附加库目录设置项目依赖的库文件.lib所在位置。 需要在项目属性-链接器-输入-附加依赖项设置项目依赖的库文件.lib。
四.其他
1.也可以使用其他的方式创建静态链接库项目比如创建C项目-Windows桌面向导 2.建议自定义配置.lib/.exe等文件的生成目录。
3.建议在解决方案-项目依赖项/项目生成顺序中指定同一个解决方案中的项目依赖规则 欢迎讨论欢迎指正欢迎转载。