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> |
CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Since: | Qt 5.10 |
Inherits: | QRandomGenerator |
Public Types
Public Functions
quint64 | generate() |
QRandomGenerator64::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
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().
QRandomGenerator64::result_type QRandomGenerator64::operator()()
Generates a 64-bit random quantity and returns it.
See also QRandomGenerator::generate() and QRandomGenerator::generate64().