vs中debug和release的区别你知道吗

时间:2023-03-09 15:25:07
vs中debug和release的区别你知道吗

在Visual Studio中,生成应用程序的时候有2种模式:Debug和Release。两者之间如何取舍呢?

一、vs中debug和release的区别

1、Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。

2、Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

3、debug程序通常比release程序要慢,尤其是处理视频方面release要比debug快很多。

4、只有DEBUG版的程序才能设置断点、单步执行、使用 TRACE/ASSERT等调试输出语句。REALEASE不包含任何调试信息

5、在Debug模式和Release模式下调试,Debug模式消耗更多的内存,所以运行较慢

在实际情况中,应该把在Release模式下生成的应用程序部署到服务器上

二、debug和release的区别实例说明

假设有这么简单的一段代码,在主程序中调用方法M1,M1方法调用M2方法,M2方法调用M3方法,M3方法中抛出异常。

C# 代码   复制
vs中debug和release的区别你知道吗
      class Program

vs中debug和release的区别你知道吗

    {
vs中debug和release的区别你知道吗 static void Main(string[] args)
vs中debug和release的区别你知道吗 {
vs中debug和release的区别你知道吗 M1();
vs中debug和release的区别你知道吗 Console.ReadKey();
vs中debug和release的区别你知道吗 }
vs中debug和release的区别你知道吗 static void M1()
vs中debug和release的区别你知道吗 {
vs中debug和release的区别你知道吗 M2();
vs中debug和release的区别你知道吗 }
vs中debug和release的区别你知道吗 static void M2()
vs中debug和release的区别你知道吗 {
vs中debug和release的区别你知道吗 M3();
vs中debug和release的区别你知道吗 }
vs中debug和release的区别你知道吗 static void M3()
vs中debug和release的区别你知道吗 {
vs中debug和release的区别你知道吗 throw new Exception("error");
vs中debug和release的区别你知道吗 }
vs中debug和release的区别你知道吗 }
vs中debug和release的区别你知道吗

1、选择"Debug"模式

把断点打在Console.ReadKey();代码行。运行,并通过依次点击"调试→窗口→调用堆栈",显示"调用堆栈"窗口信息,如下:

vs中debug和release的区别你知道吗

2、选择"Release"模式,再调试,显示如下

vs中debug和release的区别你知道吗