对于C++/C,最简单的调试方法是使用cout/printf将正在发生的事情打印到控制台。WPF/C#中的等效方法是什么?我考虑过使用MessageBox(),但是WPF似乎不支持这个函数。我也考虑过使用日志记录函数,但是我想它比printf/cout复杂得多。我可以在VisualStudio中使用断点,即使如此,我也需要一些命令来设置断点。
if (ABC()) { // What command should be here to set a break point? }
eulz3vhy1#
Debug.Write和Debug.WriteLine是要使用的方法,在发布版本中(或者更准确地说,在未定义DEBUG的版本中),它们将被编译出来。要包含在定义了TRACE的版本中(例如,调试和发布的调试配置),请使用Trace.Write和Trace.WriteLine。如果你有一个调试器连接(如Visual Studio),那么它应该显示这些(在VS中它的Output tool window)。当不在调试器中运行时,像Sysinternal的Debug View这样的工具将显示此输出。
Debug.Write
Debug.WriteLine
DEBUG
TRACE
Trace.Write
Trace.WriteLine
tjrkku2a2#
您可以使用System.Diagnostics.Debug.WriteLine。要中断调试器,请使用System.Diagnostics.Debugger.Break。而不是if(){ Break;}构造,请考虑Debug.Assert相关例程。
vfh0ocws3#
您可以使用MessageBox.Show()或调试跟踪或者使应用程序键入控制台应用程序(在项目设置中)并使用Console.WriteLine()或者使用System.Diagnostics跟踪
pxyaymoc4#
在C#中,与cout/printf等效的是Console.WriteLine(字符串)或Console.Write(字符串)。
xqk2d5yq5#
您可以使用;
System.Diagnostics.Debug.WriteLine("hello world"); System.Diagnostics.Debug.Write("hello world"); Debug.WriteLine("hello world"); Debug.Write("hello world");
如果您想查看调试日志,请不要单击“Start without debugging button”。
5条答案
按热度按时间eulz3vhy1#
Debug.Write
和Debug.WriteLine
是要使用的方法,在发布版本中(或者更准确地说,在未定义DEBUG
的版本中),它们将被编译出来。要包含在定义了TRACE
的版本中(例如,调试和发布的调试配置),请使用Trace.Write
和Trace.WriteLine
。如果你有一个调试器连接(如Visual Studio),那么它应该显示这些(在VS中它的Output tool window)。
当不在调试器中运行时,像Sysinternal的Debug View这样的工具将显示此输出。
tjrkku2a2#
您可以使用System.Diagnostics.Debug.WriteLine。
要中断调试器,请使用System.Diagnostics.Debugger.Break。而不是if(){ Break;}构造,请考虑Debug.Assert相关例程。
vfh0ocws3#
您可以使用MessageBox.Show()
或调试跟踪
或者使应用程序键入控制台应用程序(在项目设置中)并使用Console.WriteLine()
或者使用System.Diagnostics跟踪
pxyaymoc4#
在C#中,与cout/printf等效的是Console.WriteLine(字符串)或Console.Write(字符串)。
xqk2d5yq5#
您可以使用;
如果您想查看调试日志,请不要单击“Start without debugging button”。