- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
当使用 Qt Creator 创建库时,它会自动生成一个全局 header ,其中定义了导出符号宏。这是一个示例代码:
#ifndef LIB_GLOBAL_HPP
#define LIB_GLOBAL_HPP
#include <QtCore/qglobal.h>
#if defined(LIB)
# define LIB_SHARED_EXPORT Q_DECL_EXPORT
#else
# define LIB_SHARED_EXPORT Q_DECL_IMPORT
#endif
#endif // LIB_GLOBAL_HPP
是否可以仅使用 Boost 库实现相同的平台独立性?我想在不依赖 Qt 库的情况下使用 Qt Creator。
最佳答案
虽然您的代码片段似乎并不完整,因为对于一个稳定的库来说,这还不够定义,但这似乎也可以通过 boost 来实现,几乎可以应用一对一的映射,即只是不同的名称:
...
#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_FOO_DYN_LINK)
# if defined(BOOST_FOO_SOURCE)
# define BOOST_FOO_DECL BOOST_SYMBOL_EXPORT
# else
# define BOOST_FOO_DECL BOOST_SYMBOL_IMPORT
# endif
#else
# define BOOST_FOO_DECL
#endif
...
请注意,它还包含我在上面提到的附加逻辑;否则,它就不是真正完整的跨平台解决方案。更多细节请引用boost文档here .
关于c++ - boost 版Qt qglobal.h,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26491498/
所以我正在尝试使用 QT Creator 创建一个 dll。我去了new project -> libary -> C++ libary -> choose .它自动生成一个头文件 global前缀和
当使用 Qt Creator 创建库时,它会自动生成一个全局 header ,其中定义了导出符号宏。这是一个示例代码: #ifndef LIB_GLOBAL_HPP #define LIB_GLOBA
我已经搜索过这个论坛并发现了一个相同的问题,但它没有解决,甚至没有提供解决我的问题的任何线索。我正在做一个使用模板的项目。首先,我像这样使用 C++ 映射 typedef map p_mMap2D;
我目前正在将一个巨大的项目从 Qt 4.x 迁移到 5.2.1,在出现这个错误之前一切都很好,我发现它非常令人困惑,因为它位于 Qt 文件中,我相信必须应用解决方案在其他地方,不在位于 5.2.1\m
我遇到以下警告 /path/QtSDK/Desktop/Qt/474/gcc/include/QtCore/qglobal.h:320:6: warning: #warning "This versi
我是一名优秀的程序员,十分优秀!