C# 如何規(guī)范的寫 DEBUG 輸出
經(jīng)常在代碼中,需要使用 DEBUG 來輸出一些奇怪的東西來進行測試。但是輸出的窗口只有一個,如果有一個逗比在不停輸出,那么就會讓輸出窗口看不到自己的內(nèi)容。
Task.Run(() => { while (true) { Console.WriteLine("我是逗比"); } }); Console.WriteLine("有用的信息");
于是逗比喜歡自己的測試代碼,因為他需要不??吹捷敵龃翱谠谡f自己,但是正常的程序員是只看有用的東西,所以他就會拿出刀子準(zhǔn)備殺掉逗比。那么逗比如何防止自己被殺,他這時就告訴程序員,注釋掉代碼
Task.Run(() => { while (true) { //Console.WriteLine("我是逗比"); } }); Console.WriteLine("有用的信息");
但是程序員注釋了,也沒有什么作用,因為逗比在很多個地方寫了這樣的代碼
Task.Run(() => { while (true) { //Console.WriteLine("我是逗比"); } }); Console.WriteLine("有用的信息"); Task.Run(() => { while (true) { Console.WriteLine("我是逗比 1"); } });
終于程序員注釋所有的代碼,可以運行了,但是逗比拿到程序員的代碼,發(fā)現(xiàn)沒有輸出了,這時他又不高興了,于是逗比去掉了所有的注釋,準(zhǔn)備在上傳代碼的時候再把代碼注釋。但是不小心,有一個地方?jīng)]有注釋了,所以還是被程序員打了。
那么逗比需要如何防止被程序員打?下面我就來告訴一個方法,使用 #if
一般在代碼會看到這樣的寫法
Task.Run(() => { while (true) { # if DEBUG Console.WriteLine("我是逗比"); # endif } });
但是這樣的寫法是不對的,因為 DEBUG 只有在所有開發(fā)者在測試都需要使用的代碼才使用他。如果是自己使用的,一般都自己定義。那么如何定義?需要在文件的開始寫下面的代碼
# define DEBUG_取消注釋顯示林德熙調(diào)試 using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading; using System.Threading.Tasks; using lindexi.framework.mvvm; using lindexi.controls; using lindexi.linq;
定義的格式是 DEBUG_取消注釋 后面加上功能
現(xiàn)在的代碼就可以修改為
Task.Run(() => { while (true) { # if DEBUG_取消注釋顯示林德熙調(diào)試 Console.WriteLine("我是逗比"); # endif } });
于是所有的我自己使用的都使用這個方法,只需要注釋掉我的定義就可以去掉所有我的代碼。這樣就不需要一個個去注釋,而且一般這句代碼在上傳代碼的時候就去掉。
但是這個方法有個缺點,在他的作用只能在一個文件,如果有多個文件都需要寫自己的代碼,那么還是需要在多個文件上添加這句話,如果在上傳代碼的時候不記得把所有的文件進行注釋,那么還是會被打。
總結(jié)
以上所述是小編給大家介紹的C# 如何規(guī)范的寫 DEBUG 輸出問題,希望對大家有所幫助!
相關(guān)文章
C#模擬http 發(fā)送post或get請求的簡單實例
下面小編就為大家?guī)硪黄狢#模擬http 發(fā)送post或get請求的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06在c#中使用servicestackredis操作redis的實例代碼
本篇文章主要介紹了在c#中使用servicestackredis操作redis的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06C#優(yōu)雅的實現(xiàn)INotifyPropertyChanged接口
這篇文章介紹了C#實現(xiàn)INotifyPropertyChanged接口的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08c#實現(xiàn)一個超實用的證件照換底色小工具(附源碼)
這篇文章主要給大家介紹了關(guān)于利用c#實現(xiàn)一個超實用的證件照換底色小工具的相關(guān)資料,通過這個小工具大家可以很方便的進行底色的切換,不用再因為底色的原因頭疼了,需要的朋友可以參考借鑒,下面來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01C#實現(xiàn)簡易計算器功能(1)(窗體應(yīng)用)
這篇文章主要為大家詳細介紹了C#實現(xiàn)簡易計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01