VS 解决方案的配置Debug和Release有什么区别?
2015-02-12 15:10
447 查看
出处:忘记了。。。给原作者致歉
Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。在bin\debug\目录中有两个文件,除了要生成的.exe或.dll文件外,还有.pdb文件,.pdb文件中就记录了代码中的断点等调试信息;
Release 称为发布版本,Release模式下不包含调试信息,并对代码进行了优化,使得程序在代码大小和运行速度上都是最优的,\bin\release\目录下只有一个.exe或.dll文件。在项目文件夹下除了bin外,还有个obj目录。编译是分模块编译的,每个模块的编译结果就保存在了obj目录下。最后会合并为一个exe或者dll文件保存到\bin\release\目录中。因为每次编译都是增量编译,也就是只重新编译改变了的模块,所以这个obj的目录的作用就是保存这些小块的编译结果,加快编译速度。
在命名空间System.DiagnZ喎�"http://www.2cto.com/kf/ware/vc/"
target="_blank" class="keylink">vc3RpY3PW0NPQRGVidWfA4KOsus1SZWxlYXNlwOCjrMC0yrXP1snPw+a1xMG91taw5rG+PGJyPgrI57n7yse3orK8sOaxvqOs1PK198rUsOaxvtbQtffTw0RlYnVnwOC1xLe9t6i++cqn0KehoyA8YnI+CkRlYnVnwOC6zVJlbGVhc2W2vNPQ0tTPws/gzay1xLe9t6g8cHJlIGNsYXNzPQ=="brush:java;">//
// 摘要: // 将消息写入 System.Diagnostics.Trace.Listeners 集合中的跟踪侦听器。 // // 参数: // message: // 要写入的消息。 [Conditional("TRACE")] public static void Write(string message);--消息会出现在调试输出中 // 摘要: // 如果条件为 true,则将类别名称和对象的 System.Object.ToString() 方法值写入 System.Diagnostics.Trace.Listeners
// 集合中的跟踪侦听器。() // // 参数: // condition: // 若要使消息被写入,则为 true;否则为 false。 // // value: // 一个 System.Object,其名称被发送到 System.Diagnostics.Trace.Listeners。 // // category: // 用于组织输出的类别名称。 [Conditional("TRACE")] public static void WriteIf(bool condition, object value,
string category);--消息会出现在调试输出中 // 摘要: // 检查条件,如果条件为 false,则输出调用堆栈。 // // 参数: // condition: // 若要禁止显示消息,则为 true;否则为 false。 [Conditional("TRACE")] public static void Assert(bool condition); --(以窗体弹出的形式输出调用堆栈信息) // // 摘要: // 发出指定的错误信息。 // // 参数: // message: //
要发出的消息。 [Conditional("TRACE")] public static void Fail(string message); --(以窗体弹出的形式,显示message) // // 摘要: // 使用指定的消息向 System.Diagnostics.Trace.Listeners 集合中的跟踪侦听器中写入错误信息。 // // 参数: // message: // 要写入的信息性消息。 [Conditional("TRACE")] public static void TraceError(string
message);--trace中的方法 message会出现在调试输出中,前面Error提示 见下图 // // 摘要: // 使用指定的消息向 System.Diagnostics.Trace.Listeners 集合中的跟踪侦听器中写入警告消息。 // // 参数: // message: // 要写入的信息性消息。 [Conditional("TRACE")] public static void TraceWarning(string message);--trace中的方法 message会出现在调试输出中,前面有Warning提示
见下图 // // 摘要: // 使用指定的消息向 System.Diagnostics.Trace.Listeners 集合中的跟踪侦听器中写入警告消息。 // // 参数: // message: // 要写入的信息性消息。 [Conditional("TRACE")] public static void TraceWarning(string message);--trace中的方法,message会出现在调试输出中,前面有Warning提示 见下图
也可以把调试信息写到指定文件,输出文件如下
TextWriterTraceListener myTextListener =
new TextWriterTraceListener("app.log");
private void test()
{
Debug.Listeners.Add(myTextListener);
Write output to the file.
Debug.WriteLine("Test output");
Debug.Close();//最高调用Close来关闭文件流。
}
相关文章推荐
- VS 解决方案的配置Debug和Release有什么区别?
- VS系列软件中debug和release编译环境有什么区别
- Debug和Release有什么区别
- Debug和Release模式到底有什么区别
- Debug和Release有什么区别
- VS.NET中的"生成解决方案"和"重新生成解决方案"有什么区别?
- Debug和Release有什么区别
- VS中Debug与Release的区别
- Debug和Release有什么区别
- VS编译Debug和Release的区别
- Debug和Release有什么区别?
- VS2008 解决方案配置器,即Debug,Release 模式选择
- Debug和Release有什么区别
- VS中Debug模式和Release模式的区别
- VisualStudio2005 用C# 写的程序,Release版本和Debug版本有什么区别,大家讨论一下好吗?
- VS.NET中的"生成解决方案"和"重新生成解决方案"有什么区别?
- iPhone debug, distribution和release有什么区别?
- Debug和Release有什么区别
- VS Debug和Release版本的区别
- VS.Net中程序集的Debug版本和Release版本的区别