场景
debug模式启用速度最大优化,出现如上的问题
debug模式如果C++/优化属性页中,优化选项选择使速度最大化(/O2),C++/代码生成属性页,基本运行时检查只能选择默认值,如果这个时候,选择两者(/RTC1,等同于 /RTCsu) (/RTC1),就会出现上述的编译问题。默认情况下release版本是/O2搭配默认值使用,所以没有上面的问题。
如下是摘自:https://docs.microsoft.com/en-us/cpp/build/reference/rtc-run-time-error-checks?redirectedfrom=MSDN&view=vs-2019
/RTC(Run-Time Error Checks运行时错误检测)
应用于启用或者禁用运行时错误检测的编译参数选项,搭配运行时检测语法
当给一个小型数据变量被赋值一个大的值,产生溢出的时候将会报告该错误。例如短整型short 0x101赋值给一个char变量