VC++静态链接库lib

本文介绍了如何在VC++中创建和使用静态链接库(lib文件)。尽管可以将.lib文件添加到工程中,但作者尝试将类放入lib文件供其他工程调用并未成功,推测静态链接库可能不直接支持导出类。添加lib文件的方法包括通过项目设置、工具选项、链接器输入路径和对象/库模块等途径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        静态链接库,格式是.lib的文件,它可以被其它工程调用,但是在被调用时是被主调工程编译到.exe文件。另外,本人尝试过将类写入lib文件,让主调工程去调用,但是没有成功,在网上也没有找到lib支持类的方法,所以初步判断为lib不支持导出类。

        新建一个lib工程,win32 static library,默认即可。


        头文件:

#ifndef STATICLIB_H
#define STATICLIB_H
extern "C" bool fnShow();
/*
#ifdef LIB_FILE
	class _declspec(dllexport) CBody	
#else
	class _declspec(dllimport) CBody
#endif
{
public:
	bool fnBreathe();
};
*/
#endif
        使用 extern "C" 是告诉编译器用C语言的方式给函数命名。C++存在函数重载,为实现同样的函数名可因参数不同而存在,所以在VC处理这些函数时,会把函数名编译成不同的名字以便自己识别,这个过程在编译器中叫符号修饰(Name Decoration)或者符号改编(Name Mangling)。C++能够兼容C,如果我们有了一个C语言的头文件和其对于的库,在C++中如何使用它呢?在include该头文件的时候当然要加入extern "C",否则按照C++
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值