博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt的一些鲜为人知但是非常有用的小功能
阅读量:4160 次
发布时间:2019-05-26

本文共 1070 字,大约阅读时间需要 3 分钟。

1. Q_GADGET:不需要从QObject继承就可以使用Qt的Meta Object功能

2. Q_ENUMS:对枚举对象进行反射(reflection)

3. Q_SIGNAL:不需要signals关键字就可以将一个函数指定为singal函数

4. Q_SLOT:不需要slots关键字就可以将一个函数指定为slot函数

5. Q_FOREACH:Qt提供的关键字foreach在配置文件里面定义了no_keywords的时候就失效了,而Q_FOREACH宏无论何时都有效

6. Q_FOREVER:原因同Q_FOREACH,用法和关键字forever一样

7. qChecksum:计算基于CRC-16-CCITT算法的CRC-16校验码

8. qCompress/qUncompress:基于zlib的算法对字节缓存区进行压缩/解压,可以自定义压缩比

9. qDeleteAll:对容器或者迭代器中的每个对象进行delete操作

10. qRound/qRound64:对浮点数取整,四舍五入

11. qFuzzyCompare:线程安全的浮点数模糊比较,处理了浮点精度误差的问题

12. qVersion:获取当前正在运行的Qt的版本号

13. sender:在slot函数中调用可以获取发送该signal的对象。仅用于来自同一线程的Qt::DirectConnection连接的 signal。由于这种做法破坏了面象的原则,慎用!

14. QSysInfo:获取当前运行的系统信息,包括版本号等,Mac/Symbian/Windows均适用

15. QtEndian:处理不同体系架构下字节存储次序不同的问题

16. QObject::findChildren<>:找出隐藏的子对象

17. qobject_cast:不需要编译器RTTI的支持就可以实现C++标准库dynamic_cast的功能

18. QObject::deleteLater:在事件处理循环中调用,则在事件处理循环结束时删除自己;在事件处理循环外调用,则在下一个事件处理循环开始时删除自己

19. qPrintable:类似QString::toLocal8Bit()::constData(),但是更好记

20. qDebug():类似Windows下的TRACE或者OutputDebugString

21. connect(SomeObj, SIGNAL(foo()), SIGNAL(bar()):通过一个signal自动触发另一个signal。

转载地址:http://addxi.baihongyu.com/

你可能感兴趣的文章
在Eclipse中查看Android源码
查看>>
Android使用webservice客户端实例
查看>>
[转]C语言printf
查看>>
C 语言 学习---ComboBox相关、简易“假”管理系统
查看>>
C 语言 学习---回调、时间定时更新程序
查看>>
第十一章 - 直接内存
查看>>
一篇搞懂Java反射机制
查看>>
Single Number II --出现一次的数(重)
查看>>
对话周鸿袆:从程序员创业谈起
查看>>
Mysql中下划线问题
查看>>
Xcode 11 报错,提示libstdc++.6 缺失,解决方案
查看>>
Windows mysql 安装
查看>>
python循环语句与C语言的区别
查看>>
vue项目打包后无法运行报错空白页面
查看>>
Vue 解决部署到服务器后或者build之后Element UI图标不显示问题(404错误)
查看>>
element-ui全局自定义主题
查看>>
facebook库runtime.js
查看>>
js报错显示subString/subStr is not a function
查看>>
高德地图js API实现鼠标悬浮于点标记时弹出信息窗体显示详情,点击点标记放大地图操作
查看>>
初始化VUE项目报错
查看>>