若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/140592209

红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

Qt开发专栏:各种问题解决(点击传送门)


问题

  在过去,测试过,在windows上双精度浮点计算不会优化,
  但是最近在windows10虚拟机上使用Qt5.9.3的msvc2017x64版本,居然进行了优化,导致卡了一下,这是之前咱们进行时间轴推进windows不会进行优化的文章:《关于 国产麒麟系统中双精度double除法编译优化导商变量不变化(代码调整+volatile) 的解决方法》(下图是麒麟上不正常,windows正常推进)
  在这里插入图片描述
  这个不优化,使用的是物理机windows10的Qt5.9.3的mingw32版本。
  但是本次环境版本自动进行了优化:
在这里插入图片描述


相关博客

  《关于 在Qt中的timerEvent信号中设置QCustomplot的日期时间轴范围乱蹿(编译器优化变量volatile) 的解决方法
  《关于 国产麒麟系统中双精度double除法编译优化导商变量不变化(代码调整+volatile) 的解决方法
  《关于 windows系统中双精度double除法编译优化导商变量不变化(代码调整+volatile) 的解决方法


调试过程

  
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


解决方法

  自然跟麒麟一样,直接从根本上放置代码进行优化,只是之前陷入误区,已经存在过不进行优化,调试到确认花了点时间。
  跟麒麟一样使用volatile,并把运算做到volatile变量操作:
#在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐