1.1 基本数据类型QGlobal
- qint8 signed char
- qint16 signed short
- qint32 signed int
- qint64 long long int (__int64 on Windows)
- qreal double
- quint8 unsigned short
- quint16 unsigned short
- quint32 unsigned int
- quint64 unsigned long long int (unsigned __int64 on Windows)
1.2常用函数
- T qAbs(const T &t) //求绝对值
- T &qMax(const T &t1,const T &t2)
- T &qMin(const T &t1,const T &t2)
- T &qBound(const T &t1,const T &t2,const T &t3)
qreal abs=-4.567;
qreal myValue1,myValue2,myValue3,myValue4;
qint32 int_a=6;
qint32 int_b=4;
qint32 int_c=7;
myValue1=qAbs(abs);
myValue2=qMax(int_a,int_b);
myValue3=qMin(int_a,int_b);
myValue4=qBound(int_a,int_c,int_b);
比较浮点数大小
- bool qFuzzyCompare(float p1,float p2);
- bool qFuzzyCompare(double p1,double p2);
- 前面比后面大true 否则false
qreal abs=-4.567;
qreal abs2=3.24;
bool i=qFuzzyCompare(abs,abs2); //返回false
随机数
- qsrand用来设置一个种子,该种子为qrand生成随机数的起始值。比如说qsrand(10),设置10为种子,那么qrand生成的随机数就在[10,32767]之间,而如果在qrand()前没有调用过qsrand(),那么qrand()就会自动调用qsrand(1),即系统默认将1作为随机数的起始值。使用相同的种子生成的随机数一样
- 在这里可以使用时间或者别的什么不固定的uint值来当种子
qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
for(int i=0; i<10; i++)
{
int test =qrand()%10;
qDebug()<&l