Qt全局定义内容
在
Qt数据类型
Qt同样通过typedef将基本的数据类型进行包装。
| Qt数据类型 | 等效定义 | 字节大小 |
|---|---|---|
| qint8 | signed char | 1 |
| qint16 | signed short | 2 |
| qint32 | signed int | 4 |
| qint64 | long long int | 8 |
| qlonglong | long long int | 8 |
| quint8 | unsigned char | 1 |
| quint16 | unsigned short | 2 |
| quint32 | unsigned int | 4 |
| quint64 | unsigned long long int | 8 |
| qulonglong | unsigned long long int | 8 |
| uchar | unsigned char | 1 |
| ushort | unsigned short | 2 |
| uint | unsigned int | 4 |
| ulong | unsigned long long int | 8 |
| qreal | double | 8 |
| qfloat16 | 2 |
qreal默认是double类型,如果使用-qreal float进行配置,则为4个字节的float类型。
qfloat16是Qt5.9.0开始新增的,表示16位的浮点数,使用qfloat16要包含
Qt函数
|Qt函数|功能|
|——— |——–|
|T qAbs(const T &value)|返回变量value的绝对值|
|bool qFuzzyCompare(double p1,double p2)|若p1近似等于p2,返回true|
|bool qFuzzyIsNull(double d)|如果d约等于0,返回true|
|const T &qMin(const T &value1, const T &value2)|返回value1和value2中的最小值|
|const T&qMax(const T&value1, const T&value2)|返回value1和value2中的最大值|
|int qrand()|获取一个随机数|
|void qsrand(uint seed)|以seed为初始化返回一个随机数|
Qt宏定义
- QT_VERSION
这个宏展开数值为0xMMNNPP(MM=major, NN=minor, PP=patch),指的是编译器的版本号。例如:Qt5.12.1–>0x051201。 QT_VERSION_CHECK
该宏展开是版本号的一个整数,例如:1
2
3
4
5
6QT_VERSION_STR
该宏展开是Qt版本号字符串,例如”5.9.0”
- Q_BYTE_ORDER、Q_BIG_ENDIAN、Q_LITTLE_ENDIAN
Q_BYTE_ORDER表示系统内存中的数据字节序,Q_BIG_ENDIAN是大端字节序,Q_LITTLE_ENDIAN是小端字节序。例如:
1 |
|
- Q_NULLPTR
Qt重定义的nullptr指针。
- Q_DECL_OVERRIDE
在类的定义中,定义一个重载虚函数时,需要添加该宏。如果使用该宏之后,对要重载的函数没有进行任何重载操作,编译器会报错。
- Q_DECL_FINAL
对类中的虚函数进行final处理,表示不能再重载。该宏对类也有效果。
1 | class MyBrain Q_DECL_FINAL {//MyBrian将不会被其它类继承 |
- Q_UNUSED(name)
该宏用在函数中定义不在函数体内使用的参数。也就是说当参数在函数体内没有使用,为了避免编译器报警告,就需要添加这个宏。
- forever
forever创建一个无限循环
- qDebug(const char *message)
用来调试程序输出时使用。