亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Debug和Trace有什么區別?

Debug和Trace有什么區別?

白豬掌柜的 2018-11-21 05:02:28
我們在調試的時候可以寫入一些東西到這兩處地方,但是怎么看呢,有什么區別嗎?
查看完整描述

2 回答

?
LEATH

TA貢獻1936條經驗 獲得超7個贊

Debug只在debug狀態下會輸出,Trace在release下也會輸出,在release下Debug的內容會消失

查看完整回答
反對 回復 2018-11-22
?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

Debug類提供一組幫助調試代碼的方法和屬性。Trace類提供一組幫助跟蹤代碼執行的方法和屬性,通俗的說就是為在不打斷程序的調試或跟蹤下,用來記錄程序執行的過程。兩個類都是密封類,不能被繼承。 Debug類的例子(代碼A): TextWriterTraceListener myListener=new TextWriterTraceListener(“F:""DebugLog.txt”); Debug.Listeners.Add(myListener); Debug.WriteLine("這是調試"); Debug.Flush(); Listener.Flush(); Trace類的例子(代碼B): TextWriterTraceListener myListener=new TextWriterTraceListener("F:""TraceLog.txt"); Trace.Listeners.Add(Listener); Trace.WriteLine("這是跟蹤"); Trace.Flush(); Listener.Flush(); 這兩個類有什么區別呢? 我們可以通過選擇項目的調試方式為“Debug”: 用代碼A測試,會發現F:"DebugLog.txt中有內容,為“這是調試”,如果用代碼B測試,會發現F:"TraceLog.txt中有內容,為“這是跟蹤”。 我們也可以通過選擇項目的調試方式為“Release”: 同樣用A,B兩段代碼測試,會發現,F:"DebugLog.txt中是沒有內容的,但F:"TraceLog.txt中還是“這是跟蹤”的文字。這里說明了一點,Debug類的內容輸出,只在Debug模式下生成的exe中起作用,如果改成Release模式下生成的exe,就失去了作用,Trace類則都起作用 用代碼A測試,會發現F:"DebugLog.txt中有內容,為“這是調試”,如果用代碼B測試,會發現F:"TraceLog.txt中有內容,為“這是跟蹤”。 現在,我們設置程序為發布方式,如下圖所示 同樣用A,B兩段代碼測試,會發現,F:"DebugLog.txt中是沒有內容的,但F:"TraceLog.txt中還是“這是跟蹤”的文字。這里說明了一點,Debug類的內容輸出,只在Debug模式下生成的exe中起作用,如果改成Release模式下生成的exe,就失去了作用,Trace類則都起作用

查看完整回答
反對 回復 2018-11-22
  • 2 回答
  • 0 關注
  • 440 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號