首页 > 其他分享 >Qt中qreal的坑

Qt中qreal的坑

时间:2024-01-26 15:24:14浏览次数:22  
标签:Qt ItemHeight height qreal radian 整型

今天在写Qt的时候遇到了一个bug:同样一个方程在PC机上算的结果是11,但在arm-Linux设备上算出来的结果是12,我自己用计算器按出来的结果也是12。

该段程序是这样的:

 

maxnumbar = qreal((ItemHeight - radian * 2) / height_rect);       其中 ItemHeight 、radian 、height_rect,这三个量的类型均是qreal,而最终结果的变量maxnumbar 的类型则是int。一开始百思不得其解,直到我将三个变量的值输出才发现了一个端倪 ItemHeight =342 ,radian =  13.68, height_rect =  26.22 怎么会恰巧有个像整型的数呢?于是我再往上翻 ItemHeight 的来源:   ItemHeight = 5 * JdLScada.ScreenHeight/ 7;   其中,JdLScada.ScreenHeight 是一个整型数,算出的结果自然是个整型数,所以赋给ItemHeight 整型,但往下我现在就想不通了,就算ItemHeight  是一个整型数就按342去算,得出的结果也应该是12,怎么算都到不了11。   有大神可以解惑的吗?   PS qreal的定义:

 

 

标签:Qt,ItemHeight,height,qreal,radian,整型
From: https://www.cnblogs.com/jarilar/p/17989477

相关文章

  • (QT) UDP监听断开
    UDP通讯只需要是用bind绑定对IP和Port的监听,断开监听可以使用函数abort() 做实验的时候用自定义类 classUDPClient:publicQObject{Q_OBJECTpublic:explicitUDPClient(QObject*parent=nullptr);publicslots:voidstartClient();voide......
  • Qt6
    第一章认识Qt新建一个GUI项目NewProject模板:Application(Qt)->QtWidgetsApplicationbuiltsystem:qmakespecifybasicinformation:Baseclass:QWidget语言:<无>kits:DesktopQt6.6.1MinGW64-bits项目的组成first_qt_project.pro:使用qmake构建系统时的项......
  • Qt编写手机端视频播放器/推流工具/Onvif工具
    一、视频播放器同时支持多种解码内核,包括qmedia内核(Qt4/Qt5/Qt6)、ffmpeg内核(ffmpeg2/ffmpeg3/ffmpeg4/ffmpeg5/ffmpeg6)、vlc内核(vlc2/vlc3)、mpv内核(mpv1/mp2)、mdk内核、海康sdk、easyplayer内核等。非常完善的多重基类设计,新增一种解码内核只需要实现极少的代码量,就可以应用整......
  • SpringBoot:Springboot整合Mqtt并处理问题
    搭建mqtt服务Docker搭建MQTT服务:https://www.cnblogs.com/nhdlb/p/17960641项目结构这是我的项目结构,主要有两个模块base-modules(业务模块)、base-utils(工具模块)组成,其中base-mqtt服务为工具模块,用于提供给其他业务模块引用依赖的。base-mqtt模块pom.xml这里我的Sprin......
  • Qt开发程序用QProcess调用curl命令上传文件并获取响应的文件
    1.需求做一个批量数字签名的工具,从一个文件夹内寻找所有的exe文件,然后复制到另外一个文件夹中,并且保存源文件的路径,将目标文件夹内的所有exe文件上传到公司的数字签名平台去做数字签名,并且返回接收后的文件;尝试了libcurl的post请求,发现总是返回参数错误; intHttpClient::Po......
  • QTableWidget指定某行某列只能输入数字
    主要通过给QTableWidget设置代理,即继承QItemDelegate类重写其中的方法实现,具体代码如下:1/**2*@fileNonNegativeNumberItemDelegate.h3*@brief非负整数校验代理4*@author禅元天道([email protected])5*@date2024-01-246*/7#ifndefNONNE......
  • qt的信号和槽以及常见容器
    Qt的信号和槽机制是Qt的一项核心特性,也是其主要的编程模型之一。它通过一种事件驱动的方式,使得不同对象之间可以进行沟通、交互和协作。信号和槽是Qt中的两个重要的概念。信号是一个事件,当一个对象的内部状态发生变化时,它会发出一个信号。槽是一个响应函数,用来处理信号所表......
  • Qt编写linux系统onvif工具(支持预览/云台/预置位/录像等)
    一、功能特点广播搜索设备,支持IPC和NVR,依次返回。可选择不同的网卡IP进行对应网段设备的搜索。依次获取Onvif地址、Media地址、Profile文件、Rtsp地址。可对指定的Profile获取视频流Rtsp地址,比如主码流地址、子码流地址。可对每个设备设置Onvif用户信息,用于认证获取详细信息......
  • Mac 上 CLion 搭建 QT6.6 开发环境
    QT6.6是一款功能强大的集成开发环境(IDE),用于C和C++的开发。在本文中,我们将讨论如何在Mac上安装CLion。安装CLion非常简单,只需遵循以下步骤即可:下载CLion:访问JetBrains官方网站,下载适用于Mac的CLion安装包。确保选择与您的操作系统版本相匹配的安装包。运行安装程序:找到已下载的安......
  • Qt 设置horizontal line 和vertical line的颜色
    在Qt中,要设置水平线(QFrame)和垂直线(QSplitter)的颜色,可以使用样式表(stylesheet)或者直接设置QPalette。下面是两种设置的示例:1.使用样式表(stylesheet)设置颜色:1QFrame*horizontalLine=newQFrame(this);2horizontalLine->move(20,20);3horizontalLine-......