0

我在 WP8 C++ 运行时组件中创建了一些 C 风格的函数。每个函数都需要考虑 const 输入和输出数组。Debug 版本运行良好,但在 Release 中某些功能运行错误。神奇之处在于简单的事情:这些函数具有相同的接口并以相同的方式使用指针,但一些函数工作正确而其他函数工作错误。

在 WP8 SDK Visual Studio 2012 中从调试切换到发布存在哪些标准问题?

4

1 回答 1

1

这些问题与任何其他 C/C++ Debug/Release 构建配置相同——具体问题取决于您的 Debug/Release 设置和代码的作用。

通常:

  • 优化器将移动代码和数据和/或删除代码。
  • 由于优化器,发布代码通常也会运行得更快,因此您会注意到由于竞争条件而导致的变化。

您需要习惯在真实设备上的发布配置中进行调试。让相同的代码在模拟器上可靠地运行也将帮助您处理一些竞争条件(因为 x86 模拟器比 ARM 设备更快)。

请参阅“使用 V-studio C++ 项目发布/调试地狱”、“单独的 'debug' 和 'release' 构建? ”。

于 2013-06-26T09:40:09.400 回答