- Q_GADGET 这个宏是Q_OBJECT宏的弱化版本吧,不过它可以继续 使用属性机制、反射等特性,但是不能使用信号与槽
- QT_INCLUDE_COMPAT 兼容版本
- QT_BEGIN_NAMESPACE 防止命名污染
- Q_GUI_EXPORT 为了实现跨平台以及插件
- Q_FLAG(RenderHint),Q_DECLARE_FLAGS(RenderHints, RenderHint)
Q_FLAG(RenderHints)
就是你可以更方便的使用标志组,比如逻辑或把Set(Qt::A|QT::B)类似这样 - explicit是防止隐式转换的
class MyClass {
public:
explicit MyClass(int value) {
// 构造函数实现
}
};
void doSomething