QT静态库和动态库的导出

因为静态库是不须要导出的。所以在写QT的前置声明的时候须要说明

#if defined(QT_SHARED)

#ifdef COMMONLIB

#define COMMONLIB_EXPORT Q_DECL_EXPORT

#else

#define COMMONLIB_EXPORT Q_DECL_IMPORT

#endif

#else

#ifdef COMMONLIB

#define COMMONLIB_EXPORT

#else

#define COMMONLIB_EXPORT

#endif

#endif


QT_SHARED在编译的时候决定是编译静态库还是动态库

详见qglobal.h,1298行(qt4.7.4源代码)QTGUI部分的导出说明

posted @ 2017-07-29 20:59  mfmdaoyou  阅读(705)  评论(0编辑  收藏  举报