跨平台开发c++库的头文件基本格式

  • c++的开发的库,一般都是偏底层的,很多情况下就要求跨平台,下面就是常用的一个跨平台的库的对外接口基本格式。
  • 有说的不对的,请指教啊。
#ifndef _YOUR_API_
#define _YOUR_API_

#ifdef __cplusplus

#ifdef WIN32

#ifdef “你自定义一个变量”//可以定义在Visual Studio的预定义里
#define YOUR_API __declspec( ) //导出模式
#else
#define YOUR_API __declspec(dllimport)//导入模式
#endif

#else
#define YOUR_API//在linux和macOS下,是直接可以访问的
#endif

extern "C" {//通常都以c语言的接口导出,兼容性好

YOUR_API int yourFunction();

}//end of extern "C"
#endif//end of #ifdef __cplusplus

#endif//end of #ifndef _YOUR_API_

你可能感兴趣的:(c/c++)