昨天,2020年10月12日,我度过了最艰难的一天,一个MFC的DLL动态库,在Debug模式下运行正常,在Release模式下运行却得不到正确的结果,不报错,但结果不正确,代码如下:

if (yxValue != 0)
{*lpByte |= 1 << ((ych - 1) % 8);
}
else
{*lpByte &= ~(1 << ((ych - 1) % 8));
}

没错,就这么一个if语句,在Release模式下,总是将if和else里的语句均执行。
如果加一行代码:

if (yxValue != 0)
{AfxMessageBox("OK");*lpByte |= 1 << ((ych - 1) % 8);
}
else
{*lpByte &= ~(1 << ((ych - 1) % 8));
}

结果就正常,只执行if或else里的语句。
昨天消耗了一整天,搞不清楚问题在哪里。后来回家辗转反侧,查手机MFC的debug和release有什么区别,终于找到一篇给我灵感的文章:MFC中release版本和debug版本区别
感谢作者!!!
今天来尝试将如下设置:

改为如下设置:

问题解决!
在MFC中使用Maximize Speed优化程序,会引起问题。所以,Release版本还是用vc++6.0默认提供的编译选项Disable(Debug)吧,这个是安装了vc以后,新建一个MFC项目默认的Release版本的编译选项。

当然可能后期的visual studio没有这类问题哈,也不一定哦,微软的东西,说不好。

MFC使用最优编译(Maximize Speed)引起的问题相关推荐

  1. VC MFC C++ MQTT VC编译MQTT VC调用MQTT dll eclipse-paho-mqtt

    VC MFC C++ MQTT VC编译MQTT VC调用MQTT dll eclipse-paho-mqtt JS HTML Web端使用MQTT通讯测试 Android Studio MQTT 使 ...

  2. 让MFC(c++)编译的程序支持高DPI

    让MFC(c++)编译的程序支持高DPI 问题描述: 写的程序A.exe,在笔记本开着盖子重启电脑,打开程序的时候是有界面的:但是如果点击重启之后把盖子合上之后,等重启完毕再打开A的时候,程序就打不开 ...

  3. MFC在查找预编译头时遇到意外的文件结尾

    1.问题描述:在查找预编译头时遇到意外的文件结尾.是否忘记了向源中添加"#include "StdAfx.h"" 2.解决办法 选中报错的文件,右键选择&quo ...

  4. mfc编译html,自己编译 MFC 库

    自己编译 MFC 库(转载) 作者:朱之光 MFC也是人做的,难免有错.vs2003三年都没有patch了. 如果不幸碰上了MFC中的bug,那么就动手修改他再进行编译吧. 1.设置编译环境 其实很简 ...

  5. MFC学习笔记(一)High Speed Chart 控件使用

    引言 大学期间学习STM32时,由于参加机器人比赛,第一次接触到摄像头,让我深深被其吸引,还记得当初为了点亮第一颗摄像头,第一次通过自己写的颜色识别算法让它按照自己的意愿去识别出每帧图像的内容,正确标 ...

  6. VC++6.0编译环境介绍(转)

    大家可能一直在用VC开发软件,但是对于这个编译器却未必很了解.原因是多方面的.大多数情况下,我们只停留在"使用"它,而不会想去"了解"它.因为它只是一个工具,我 ...

  7. 在windows程序中嵌入Lua脚本引擎--使用VS IDE编译Luajit脚本引擎

    前些天听到一个需求:某业务方需要我们帮忙清理用户电脑上的一些废弃文件.同事完成这个逻辑的方案便是在我们程序中加入了一个很"独立"的业务逻辑:检索和删除某个程序产生的废弃文件.试想, ...

  8. 学习并整理windows下编译nginx的步骤

    参考链接:https://blog.csdn.net/i348018533/article/details/51701865 https://blog.csdn.net/hyhnoproblem/ar ...

  9. 如何最小编译你的软件

    在网上,有好多绿色软件,不仅功能强大,而且软件本身的体积非常小.有的通常只在几十K左右.那他们是怎么做到把软件做的怎么小的呢?      先看一个最典型的程序: #include int main() ...

最新文章

  1. MyBatis插件使用--分页插件与性能拦截器
  2. 傲娇Android二三事之操蛋的开发日记(第一回)
  3. LeetCode MySQL 1098. 小众书籍
  4. MySQL 面试,必须掌握的 8 大核心点
  5. 【程序设计】模块化程序设计
  6. maven处理和java平级的资源文件
  7. 3.4 SE55表维护生成器
  8. python备份目录下文件夹_python---备份目录和文件
  9. 运行spark及hadoop版本不一致解决方法
  10. t’触发器真值表和状态方程_t触发器(d触发器真值表)
  11. 运维工程师遇到的运维事件_运维工程师岗位报告
  12. kubernetes 源码安装1.18.3 (7)部署cni网络
  13. latex normal是几号字_LaTeX 中英文字体字号设置
  14. 数学公式中的希腊字母读音
  15. amd RX6800和rtx3070哪个好
  16. 使用git提交代码到仓库报错总结
  17. Java——去掉小数点后面多余的0
  18. linux openssl 编译错误,“致命错误:openssl/opensslv.h:没有这样的文件或目录”编译mitmproxy...
  19. 曹大嘴老师(本名:曹恒山老师)--沪师经纪
  20. synology 黑群晖 5.0-4418 gnoboot官方pat稳定版安装教程(修复相册)

热门文章

  1. Java项目在jsp页面中引入jquery框架的步骤
  2. 小程序中,点击按钮或者图标,弹出输入框和键盘
  3. svg html 鼠标滚轮交互,鼠标滚轮控制SVG线条动画
  4. 徐紫芸在多地打造康养基地,实现全球旅居式养老
  5. emo服务器未响应,Dota2:这也能扯到Ame身上?Emo被kaka整蛊后感慨:Ame来就宰了!...
  6. 中文分词-常宝宝课件
  7. 大数据之spark_spark的Action算子解析
  8. 已经发车的票还能取出来吗_火车票过了开车时间,还能在自动取票机取出该票吗?...
  9. 如何替换视频背景为其它的场景?
  10. 【Java二维数组】(超详解)