Debugging Visual Studio C++;在代码的特定部分禁用调试

Debugging Visual Studio C++;在代码的特定部分禁用调试,debugging,c++11,visual-c++,visual-studio-2015,visual-studio-debugging,Debugging,C++11,Visual C++,Visual Studio 2015,Visual Studio Debugging,我在我的项目中有一个操作,在调试模式下大约需要2分钟,在发布模式下不到一秒钟。(如果重要的话,它是一个向向量写入大量数据的函数) 显然,在调试模式下使用我的应用程序几乎是不可能的,因为这段代码导致了糟糕的性能 所以我的问题是:是否可以对特定的文件或类启用性能优化并禁用调试?如果没有,还有其他方法可以解决此问题吗?有多个方面会影响性能: 优化(如您所述)。您可以在每台计算机上指定优化 文件级使用属性->C/C++->优化。你也可以 使用#pragma optimize,如下所述: 仅在调试配置中

我在我的项目中有一个操作,在调试模式下大约需要2分钟,在发布模式下不到一秒钟。(如果重要的话,它是一个向向量写入大量数据的函数)

显然,在调试模式下使用我的应用程序几乎是不可能的,因为这段代码导致了糟糕的性能


所以我的问题是:是否可以对特定的文件或类启用性能优化并禁用调试?如果没有,还有其他方法可以解决此问题吗?

有多个方面会影响性能:

优化(如您所述)。您可以在每台计算机上指定优化 文件级使用属性->C/C++->优化。你也可以 使用
#pragma optimize
,如下所述:

仅在调试配置中执行的附加代码,如检查迭代器;您可以通过_SECURE_SCL或_ITERATOR_DEBUG_LEVEL控制它们,如下所述:


此外,您还可以无条件地提高代码的性能,例如,通过在向量中预先保留所需的空间来避免重新分配。

我的第一反应是在发布模式下启用调试信息,并以这种方式进行调试。您确实会时不时地遇到惊喜,但通常情况下,这很好。您也可以考虑模拟对象(#ifdef DEBUG)。请参阅