크로스플랫폼 컴파일 시 dll 내보내기 방식을 제어하는 쓰기

1531 단어
#if defined(_MSC_VER)
    //  Microsoft
    #ifdef EXPORTING_DLL
        #define EXPORT_DLL __declspec(dllexport)
    #else
        #define EXPORT_DLL __declspec(dllimport)
    #endif
#elif defined(__GNUC__)
    //  GCC
    #ifdef EXPORTING_DLL
        #define EXPORT_DLL __attribute__((visibility("default")))
    #else
        #define EXPORT_DLL
    #endif
#else
//  do nothing and hope for the best?
    #ifdef EXPORTING_DLL
        #define EXPORT_DLL
    #else
        #define EXPORT_DLL
    #endif
    #pragma warning Unknown dynamic link import/export semantics.
#endif

좋은 웹페이지 즐겨찾기