经常在代码中,需要使用 debug 来输出一些奇怪的东西来进行测试。但是输出的窗口只有一个,如果有一个逗比在不停输出,那么就会让输出窗口看不到自己的内容。
task.run(() => { while (true) { console.writeline("我是逗比"); } }); console.writeline("有用的信息");
于是逗比喜欢自己的测试代码,因为他需要不停看到输出窗口在说自己,但是正常的程序员是只看有用的东西,所以他就会拿出刀子准备杀掉逗比。那么逗比如何防止自己被杀,他这时就告诉程序员,注释掉代码
task.run(() => { while (true) { //console.writeline("我是逗比"); } }); console.writeline("有用的信息");
但是程序员注释了,也没有什么作用,因为逗比在很多个地方写了这样的代码
task.run(() => { while (true) { //console.writeline("我是逗比"); } }); console.writeline("有用的信息"); task.run(() => { while (true) { console.writeline("我是逗比 1"); } });
终于程序员注释所有的代码,可以运行了,但是逗比拿到程序员的代码,发现没有输出了,这时他又不高兴了,于是逗比去掉了所有的注释,准备在上传代码的时候再把代码注释。但是不小心,有一个地方没有注释了,所以还是被程序员打了。
那么逗比需要如何防止被程序员打?下面我就来告诉一个方法,使用 #if
一般在代码会看到这样的写法
task.run(() => { while (true) { # if debug console.writeline("我是逗比"); # endif } });
但是这样的写法是不对的,因为 debug 只有在所有开发者在测试都需要使用的代码才使用他。如果是自己使用的,一般都自己定义。那么如何定义?需要在文件的开始写下面的代码
# define debug_取消注释显示林德熙调试 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_取消注释 后面加上功能
现在的代码就可以修改为
task.run(() => { while (true) { # if debug_取消注释显示林德熙调试 console.writeline("我是逗比"); # endif } });
于是所有的我自己使用的都使用这个方法,只需要注释掉我的定义就可以去掉所有我的代码。这样就不需要一个个去注释,而且一般这句代码在上传代码的时候就去掉。
但是这个方法有个缺点,在他的作用只能在一个文件,如果有多个文件都需要写自己的代码,那么还是需要在多个文件上添加这句话,如果在上传代码的时候不记得把所有的文件进行注释,那么还是会被打。
总结
以上所述是小编给大家介绍的c# 如何规范的写 debug 输出问题,希望对大家有所帮助!
如对本文有疑问, 点击进行留言回复!!
使用Visual Studio2019创建C#项目(窗体应用程序、控制台应用程序、Web应用程序)
C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析
网友评论