要使用export关键字来编写动态库,首先需要编写一个包含导出函数的源文件。在函数声明前使用__declspec(dllexport)修饰符,以便告诉编译器这个函数需要被导出。
例如,以下是一个简单的动态库示例:
// mylibrary.h#ifndef MYLIBRARY_H#define MYLIBRARY_H#ifdef MYLIBRARY_EXPORTS#define MYLIBRARY_API __declspec(dllexport)#else#define MYLIBRARY_API __declspec(dllimport)#endif// 导出函数声明extern "C" MYLIBRARY_API int add(int a, int b);#endif// mylibrary.cpp#include "mylibrary.h"// 导出函数定义extern "C" int add(int a, int b){ return a + b;}在编译动态库时,需要定义MYLIBRARY_EXPORTS宏来告诉编译器这是一个动态库。在使用该动态库的应用程序中,只需包含mylibrary.h头文件,并链接相应的动态库文件即可。
请注意,不同的编译器可能有不同的关键字或宏来实现动态库的导出和导入,以上示例是针对Windows平台上的Visual Studio编译器的写法。在其他平台上可能需要使用不同的方法来实现动态库的导出和导入。


