1. 程式人生 > >Qt 生成隨機數

Qt 生成隨機數

簡述

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; }