首页 > 其他分享 >Qt 生成随机数 qrand、QRandomGenerator

Qt 生成随机数 qrand、QRandomGenerator

时间:2024-02-28 11:22:24浏览次数:27  
标签:10 Qt 生成 QRandomGenerator bounded 随机数 qrand

//老方法
//利用qrand和qsrand生成随机数
//位于QtGlobal中
//例,生成一个0和10之间的随机数

1 qsrand(QTime::currentTime().msec());    //设置种子,该种子作为qrand生成随机数的起始值,RAND_MAX为32767,即随机数在种子值到32767之间
2 qrand()%10;

//新方法
//利用QRandomGenerator类
// Qt5.10之后新增该类
//例

1 qDebug()<<QRandomGenerator::global()->bounded(10);        //生成一个0和10之间的整数
2 qDebug()<<QRandomGenerator::global()->bounded(10.123);    //生成一个0和10.123之间的浮点数
3 qDebug()<<QRandomGenerator::global()->bounded(10, 15);    //生成一个10和15之间的整数

 

标签:10,Qt,生成,QRandomGenerator,bounded,随机数,qrand
From: https://www.cnblogs.com/ybqjymy/p/18039437

相关文章

  • Qt 无法连接到进程内QML调试器
    问题:由于在Qt5以上版本默认开启QML调试器造成的。用于告知用户,这将打开一个到运行QML的Javascript解释器的端口,以便从中获得调试输出。显然,这会造成一个安全漏洞,所以在不安全的地方使用时应该关闭它(在释放运行时自动关闭)。Qt4默认不开启QML调试器,而Qt5版本以上默认开启。......
  • Qt QList使用总结
    概述QList是Qt的泛型容器类之一。它将项目存储在一个列表中,该列表提供基于索引的快速访问以及基于索引的插入和删除。QList、QLinkedList和QVector提供了类似的API和功能。它们通常是可互换的,但性能有所区别。QVector应该是默认首选的容器QList是最广泛用于QtAPI中传递值......
  • Qt QVector和vector以及QMap和map的遍历性能对比
    使用Qt中的容器给C++开发带来很大的便利,而且QVector和QMap等容器扩展的一些成员函数也是很方便的。但是Qt的这些容器和STL库的容器比,效率到底怎么样?我就写了几个简单的遍历的例子,测试了QVector、vector等容器的那些方法效率更高。测试环境:系统:windows10编译器:MingGWmingw......
  • Qt 开发经验常见问题及优化100条
    01:001-010当编译发现大量错误的时候,从第一个看起,一个一个的解决,不要急着去看下一个错误,往往后面的错误都是由于前面的错误引起的,第一个解决后很可能都解决了。比如我们可能就写错了一行代码,编译提示几百个错误,你只要把这一行纠正了,其他错误也就没了。定时器是个好东西,学会好使......
  • Qt QList的用法
    在Qt中,QList 是一个常用的容器类,用于存储元素的动态数组。以下是简单的QList用法:1、包含头文件在使用QList之前,确保包含相应的头文件。#include<QList>2、创建QList对象使用QList模板创建一个对象,并指定存储的数据类型。QList<int>myList;//创建一个......
  • Qt QString的isEmpty与isNull区别
    1.isEmpty()如果字符串没有字符,则返回true;否则返回false。1QString().isEmpty();//returnstrue2QString("").isEmpty();//returnstrue3QString("ABC").isEmpty();//returnsfalse2.isNull如果字符串是无效的,则返回true;否则返回false。1QString().is......
  • Qt QVector、QList、QSet和QMap:性能与用途比较
    Qt提供了多种容器类,用于存储和管理数据。其中,QVector、QList、QSet和QMap是最常用的几种。这些容器类在性能和用途方面存在一些差异,选择合适的容器对于提高应用程序的效率和正确性至关重要。下面我们将从以下几个方面对这四种容器进行比较:1.存储方式QVector:动态数组,元素在......
  • Qt 常见数据结构详解:从基本框架到实际应用
    在Qt框架中,数据结构的选择对于提高代码效率和性能至关重要。正确地使用数据结构可以显著提高应用程序的效率和响应速度。下面我们将详细介绍Qt中常见的几种数据结构,包括QString、QList、QVector、QMap、QHash、QSet和QPair。1.QStringQString是Qt中用于处理字符串的类。......
  • Qt 编写的qml程序全屏时,挡住系统虚拟键盘的解决办法
    官方有提到该问题。尤其是使用qml时,一定会出现这个遮挡问题。https://doc.qt.io/qt-5/windows-issues.html 默认的qml工程的解决代码如下:1...2#include<QWindow>3#include<QtPlatformHeaders/QWindowsWindowFunctions>4...56intmain(intargc,char*arg......
  • Qt 虚拟键盘qtvirtualkeyboard遮挡QLineEdit问题
    1.通过修改虚拟键盘源码qtvirtualkeyboard-everywhere-src-5.14.2\src\virtualkeyboard\desktopinputselectioncontrol.cpp:1591voidDesktopInputSelectionControl::updateVisibility()2{3staticintoriginalY=0;4if(!m_enabled){5//if......