QT中一些常用的宏和函数
QT中一些常用的宏和函数
宏 | 说明 |
---|---|
Q_ASSERT Q_ASSERT_X |
常用于断言,Release模式下不起作用 |
Q_ASSUME | = Q_ASSERT_X + Q_UNREACHABLE |
Q_COREAPP_STARTUP_FUNCTION | 添加一个全局函数,在QCoreApplication构造时被执行。 要注意,这里的执行比QGuiApplication的初始化要早。 |
Q_DISABLE_COPY | 禁用类的拷贝构造函数和赋值构造函数,常用于单例类的实现 |
Q_FOREACH | 不在建议使用,等价于foreach关键字 |
Q_FOREVER | 等价于forever关键字 |
Q_GLOBAL_STATIC Q_GLOBAL_STATIC_WITH_ARGS |
创建一个全局的,静态的对应类型,但相比于static Type t这种写法有一定优势 |
Q_LOGGING_CATEGORY | 快速声明一个日志的category对象 |
Q_OS_* | 区分不同的平台,常见的有Q_OS_ANDROID,Q_OS_LINUX,Q_OS_WIN64等 |
Q_PROCESSOR_* | 区分不同的处理器环境,例如Q_PROCESSOR_ARM,Q_PROCESSOR_MIPS,Q_PROCESSOR_X86_64等 |
Q_LIKELY Q_UNLIKELY |
缓存命中,提高执行效率。 |
Q_UNREACHABLE | 执行到这里,程序会发生未定义的行为。常见的后果就是崩溃,用于标记永远不会执行到的语句 |
Q_UNUSED | 没有用到部分参数或对象时,编译器会发出警告,使用此宏减少警告。 |
qAbs | 返回参数的绝对值 |
qMax | 返回两个参数中较大的一个 |
qMin | 返回两个参数中较小的一个 |
qRound | 返回较近的整数 |
qBound | 返回最小值到最大值范围内的一个合理值 |
qAddPreRoutine | 在QCoreApplication构造时执行操作 |
qAddPostRoutine | 在QCoreApplication析构时执行操作 |
qDeleteAll | 删除容器中的所有元素,元素必须是指针类型(注意:qDeleteAll只做元素的delete操作,并不会将元素从容器中remove,需要手动对容器进行clear) |
头文件
头文件 | 说明 |
---|---|
QtMath | 如果你需要做一些数学计算,请包含这个头文件,包含了常用的绝对值,取整,三角计算等函数 |
Qt关键点
Qt 5.11 Qt Widgets Model/View Programming
Comments
Comment plugin failed to load
Loading comment plugin