- Qt 5.15
- Qt Core
- C++ Classes
- QRandomGenerator64
- Qt 5.15.19 Reference Documentation

# QRandomGenerator64 Class

The QRandomGenerator64 class allows one to obtain 64-bit random values from a high-quality, seed-less Random Number Generator. More...

Header: | #include <QRandomGenerator64>
qmake: | QT += core
Since: | Qt 5.10
Inherits: | QRandomGenerator

This class was introduced in Qt 5.10.

- List of all members, including inherited members

## Public Types

typedef | result_type

## Public Functions

quint64 | generate()
result_type | operator()()

## Detailed Description

QRandomGenerator64 is a simple adaptor class around QRandomGenerator, making the QRandomGenerator::generate64() function the default for operator()(), instead of the function that returns 32-bit quantities. This class is intended to be used in conjunction with Standard Library algorithms that need 64-bit quantities instead of 32-bit ones.

In all other aspects, the class is the same. Please refer to QRandomGenerator's documentation for more information.

See also QRandomGenerator.

## Member Type Documentation

### typedef QRandomGenerator64::result_type

A typedef to the type that operator() returns. That is, quint64.

See also operator().

## Member Function Documentation

### quint64 QRandomGenerator64::generate()

Generates one 64-bit random value and returns it.

Note about casting to a signed integer: all bits returned by this function are random, so there's a 50% chance that the most significant bit will be set. If you wish to cast the returned value to qint64 and keep it positive, you should mask the sign bit off:

         qint64 value = QRandomGenerator64::global()->generate() & std::numeric_limits<qint64>::max();

See also QRandomGenerator and QRandomGenerator::generate64().

### result_type QRandomGenerator64::operator()()

Generates a 64-bit random quantity and returns it.

See also QRandomGenerator::generate() and QRandomGenerator::generate64().