使用obj

1.包含头文件

2.工程添加obj


方法一:直接拖到vs

方法二:连接器->输入附加依赖项

注意:如果obj要给C语言使用,函数声明前加extern“C”

静态库(stactic library)

使用lib的步骤

1.包含头文件

2.工程添加lib


方法一:直接拖到vs

方法二:连接器->输入附加依赖项

方法三:使用#pragma comment(lib,“lib名”)

注意:如果obj要给C语言使用,函数声明前加extern“C”

静态库的缺点

1.同一份代码在多个exe中,造成磁盘冗余

2.lib中bug程序更新,程序更新时需要重新编译

动态库(dynamic library)-.dll,.so

原理:库代码事在运行期载入进程,而非在编译器链接入可执行文件

动态库使用步骤

1.包含头文件

2.工程添加lib


方法一:直接拖到vs

方法二:连接器->输入附加依赖项

方法三:使用#pragma comment(lib,“lib名”)

3.将dll拷贝到exe的文件夹下

头文件兼容导出和导入的方法:

#ifdef DLL_EXPORT
#define DLL_INTERFACE__declspec(dllexport)
#else
#define DLL_INTERFACE__declspec(dllimport)
#endif

头文件兼容c和c++的方法:

#ifdef __cplusplus
extern "c"{
#endif
DLL_DLL_INTERFACE 函数
DLL_DLL_INTERFACE 函数
DLL_DLL_INTERFACE 函数
#ifdef __cplusplus
}
#endif

Categories:

Tags:

No responses yet

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注