通用元件‎ > ‎

DLL 定義機制

張貼者:2012年3月26日 晚上8:40Cxxlman Cxxlman   [ 已更新 2012年4月3日 晚上8:47 ]
提供跨平台的 CXXL_DLLEXPORT 和 CXXL_DLLIMPORT 巨集定義,具體用法見以下範例:
/* 在 TEST.HPP 檔 */
#include <DLLDEF.HPP> // 引入此檔
#if defined(_TEST_DLLEXPORT) // 製作 DLL 的專案須自行定義一個專屬識別符號
#define TEST_DLLEXPORT CXXL_DLLEXPORT
#else
#define TEST_DLLEXPORT CXXL_DLLIMPORT
#endif
extern TEST_DLLEXPORT int Var; // 用於資料變數
TEST_DLLEXPORT void  Function1(void); // 用於函數
class CXXLOBJECT_DLLEXPORT TestClass // 用於 class
{
};

 如此 TEST.HPP 就能用於建立 DLL 和 這個 DLL 的使用端

至於在 CPP 檔中,須匯出的資料或函數直接用 CXXL_DLLEXPORT

 


引入檔

DLLDEF.HPP

 

程式庫

 

Comments