gpt4 book ai didi

c++ - Debug模式或 Release模式

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:11:33 38 4
gpt4 key购买 nike

最近,我正在努力将物理引擎集成到我的图形引擎程序中。在此之前,我总是在 Debug 模式下构建我的程序,因为我觉得 Debug 意味着安全和更多信息让我知道哪里错了。

在我的程序中,我在 Release 模式下构建了 Assimp,但直到现在我仍然在 Debug 模式下使用它。目前,我在 Release 模式下构建 Bullet Physics,因为在 Debug 模式下性能差异很大。如果你想知道它有多慢,你可以看this .

重要的是我不能在 Debug 模式下使用这个 *.lib 文件,所以我有一个问题,你什么时候或为什么从 Debug 模式或另一方面更改为 Release 模式 .或者在 Debug模式下使用 Release 库?目前,我认为我需要为 Bullet Physics 永久更改为 Release 模式,不知道这是好是坏。

编辑:

我知道发布和 Debug模式的好处,因为在stackoverflow中有很多可能重复的文章,但我想知道的是当你做一个程序时选择什么决定或者只是因为遇到性能问题所以需要像我一样将程序重建为 Release模式。我只是想澄清一下可能重复的文章之间的一点不同:)

这道题有四种情况。

案例 1.开始一个新项目并在 Debug 模式下编程,因为...。

案例 2.开始一个新项目并在 Release模式下编程,因为...。

Case 3.在Debug模式下工作了一段时间,但由于...而改为Release模式。

Case 4.在Release模式下工作了一段时间,但是因为...而转为Debug模式。

我真的很想知道这四种情况下的判决是什么。我在案例 3 中,因为 Bullet Physics 的性能,我决定让程序永远处于 Release模式,并让其他调试库重建为 Release模式。对于情况3,问题是,我只是使用第三方库,所以我需要使用 Debug模式吗?或者我只是进入 Release模式?

对于情况 1 和 2,是否有任何决定让您使用 Debug模式或 Release模式来构建您的新程序。

对于案例4,我想不通为什么要将Release模式改为Debug模式,但也许有实际案例?除了构建库之外,您可以做出这个决定。

如果我的问题不够清楚,请告诉我。

最佳答案

“ Debug模式”和“ Release模式”是两组预定义的编译器开关。但是,您可以覆盖它们,并创建中间形式。 C++ 通常从内联中获益良多,因此使用内联进行调试的构建是一种合理的中间形式。另一个常见的变体是即使在调试版本中也使用 C 和 C++ 库的发布版本。

您甚至可以覆盖单个文件级别的开关。你的子弹物理学可能是正确的,所以你可能想检查它们是否可以用

也就是说,在处理不同的问题时,在 Debug模式和 Release模式之间切换是很常见的。

关于c++ - Debug模式或 Release模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40575482/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com