问题标签 [release-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Visual C++ 2008 版本构建打破了我的浮动
再会,
我让我的项目使用 Microsoft Visual C++ 2008 Express Edition 在发布模式下构建。然而,我这里的一些浮点值与调试配置中的不同。出于某种原因,对于某些特定功能,它们都变成了 NaN 或零。我不确定为什么会发生这种情况,这是我第一次在发布模式下构建,感谢您的帮助!
尝试的步骤:
浮点命令行选项。
由于某些原因,单步执行代码不起作用。
几个小时盯着代码感谢您的阅读!
这是行为不端的代码(注意:过去我在使用此特定功能的 NaN 时遇到过麻烦,但这很奇怪):
标题:
对于上下文:
这些文件发现了问题:
标题:
c++ - C++ 未定义的行为会导致调试和发布版本的行为不同吗?
这个问题有很多很好的答案来解释为什么一个错误可能只在发布版本中表现出来。
调试模式下不存在发布版本中错误的常见原因
我有一个关于未定义行为的更具体的问题。
如果一个程序在 Debug 版本中似乎总是可以正常工作,但在发布版本中表现不同(但是总是以相同的错误方式表现),那么问题可能是由于未定义的行为造成的吗?
visual-studio-2010 - Visual Studio 针对发布模式下的不同行为进行了优化
我有一个用 Visual Studio 2010 开发的 C++ 应用程序。我有一个静态方法,调用它来解码通过串行硬件接收到的消息。
当我使用“发布”配置时,编译器以某种奇怪的方式优化了该方法,并且该方法无法按预期工作。当我使用“调试”配置时,一切都很好。
这是方法:
我认为发布配置中的一些优化(我使用 /O2)导致 i 变量出现问题。
arrays - Visual Studio 的调试器可以禁用其“数组安全”吗?
我指的是这样一个事实,在调试模式下,您有时可以避免数组溢出,但在发布模式下,它会崩溃,您不知道是哪个数组出现问题(我的代码真的很大) . 我可以禁用额外的填充,所以在调试模式下也会发生崩溃,所以我可以检查哪个函数在调用堆栈上导致它?
c++ - 在 RELEASE 配置中使用向量 push_back 时 C++ 代码崩溃
当我在 Visual Studio 2008 的发布配置中构建解决方案时,我在使用 c++ 向量时遇到问题。代码在调试配置中运行良好。我在网上搜索并没有找到解决我遇到的问题的解决方案。
这是我的代码的解释。我已经定义了一个类如下。此类存储平面的一些参数,包括其在空间中的位置等。
我有一个函数可以配置 12 个不同的 PlaneConfigs:
每个 PlaneConfig 将在函数 PlaneConfigInit 中进行如下初始化。为简单起见,我只带了PLANE01的初始化。
我完全将上面的代码用于第二个平面并继续执行此操作,直到所有 12 个平面(PLANE01、PLANE02、...、PLANE12)都在函数 PlaneConfigInit 中初始化。这在调试中非常有效,但在发布时无效。PLANE01 的初始化是在没有崩溃的情况下完成的,但是当涉及到 PLANE02 时,它会在我使用 push_back() 函数的类的 update() 函数处崩溃。
我希望我已经很好地解释了我的问题。如果需要更多信息,请告诉我。
如果有任何帮助,我将不胜感激。
艾哈迈德
objective-c - CLLocationManager 在发布模式下崩溃并出现错误 EXC_BAD_ACCESS 但不是调试模式
弹出位置窗口时,我的游戏总是崩溃。
每当它崩溃时,它都会返回 main 并显示错误EXC_BAD_ACCESS。但是,我没有收到任何堆栈跟踪来找出我的问题。僵尸都不提供堆栈跟踪。
一件有趣的事情是,这种崩溃只发生在 iOS 模拟器上的发布模式下。如果我将其更改为调试模式,它会完美运行。如果我在具有发布模式的设备上运行它,它会完美运行。如果我注释掉 [locationManager startUpdatingLocation],它会完美运行。
我该如何解决这个问题?
visual-c++ - 创建指向大量分配的一维数组的子数组的指针并发布 VC++ 构建
这是我的第一篇文章,希望我没有犯任何错误。我有以下代码。我试图一次性分配和访问一个二维数组,更重要的是在一个字节数组中。我还需要能够单独访问每个子数组,如代码所示。它在调试模式下工作正常。尽管在 VS 2012 的发布版本中,当应用编译器优化时,它会在运行时引起一些问题。如果我禁用发布编译器优化,那么它可以工作。我需要做一些特殊的演员来通知编译器吗?
我在代码中的优先级是完整数组的快速分配和网络通信,同时使用它的子数组。
我不喜欢使用boost。
非常感谢 :)
c++ - 使用 DirectXMath 中的 XMVECTOR 作为类成员仅在发布模式下会导致崩溃?
我一直在尝试使用 XMVECTOR 作为边界框的类成员,因为我做了很多计算,但我每帧只使用一次 XMFLOAT3,所以边界框有一种方法可以让我在 XMFLOAT3 中居中,否则它会停留在 XMVECTOR 中;该类使用 __declspec(align(16)) 进行删除,并在调试模式下工作。但是在发布模式下,它会在我将其设置为某些东西的瞬间崩溃:
每当我这样做时:
它崩溃了,给了我 0xC0000005:访问冲突读取位置 0x00000000。当我将它创建为指针时它也会崩溃:
这是构造函数:
同样,这在 Debug 模式下运行良好,但在 Release 中它崩溃了。Release 模式会发生什么变化而生成无效代码?除了将框对齐到 16 个字节之外,我还需要做其他事情吗?
c++ - VC++ OpenCV 项目在发布模式下不显示相机实时捕获
我有一个VC++
项目来编程相机、帧显示,并使用OpenCV
. 问题是该程序在调试模式下工作正常,它显示了来自相机的实时捕捉,但是当我将它更改为发布模式时,程序的 .exe 文件不会隐藏窗口并且它不会显示来自相机的任何东西. 这是我的代码:
有人有什么想法吗?