Advertisement

Qt produces random numbers

阅读量:

简述

Qt 框架中内置了 qsrand 函数,用于生成伪随机数序列,笔者对该功能进行了简易封装,设计的函数支持用户自定义随机数范围,包括上限与下限参数,可直接调用使用。

源码

复制代码
    // 头文件包含
    #include <QTime>
    
      
      
    
复制代码
    // min:随机数的最小值,max:随机数的最大值
    int generateRandomInteger(int min, int max)
    {
    Q_ASSERT(min < max);
    // 加入随机种子。种子是当前时间距离0点0分0秒的秒数。
    // 每次启动程序,只添加一次种子,以做到数字真正随机。
    static bool seedStatus;
    if (!seedStatus)
    {
        qsrand(QTime(0, 0, 0).secsTo(QTime::currentTime()));
        seedStatus = true;
    }
    int nRandom = qrand() % (max - min);
    nRandom = min + nRandom;
    
    return nRandom;
    }

全部评论 (0)

还没有任何评论哟~