欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#中的兩種debug方法介紹

 更新時(shí)間:2015年02月11日 10:58:28   投稿:junjie  
這篇文章主要介紹了C#中的兩種debug方法介紹,本文講解了代碼用 #if DEBUG 包裹、利用宏定義兩種方法,需要的朋友可以參考下

第一種:需要把調(diào)試方法改成debug
代碼用 #if DEBUG 包裹

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace SplitPackage
{
  public static class EnvConfig
  {
    static EnvConfig()
    {
#if DEBUG
      ToolsPath = @"D:\workspace\shopstyle\tool";
#else
      ToolsPath = Environment.CurrentDirectory;
#endif
      int rootIdx = ToolsPath.LastIndexOf(@"\");
      if (rootIdx > 0)
      {
        RootPath = ToolsPath.Substring(0, rootIdx);
      }
    }
    public static string ToolsPath { get; private set; }
    public static string TmplateFile { get { return Path.Combine(ToolsPath, @"template\default.pm"); } }
    public static string RootPath { get; private set; }
    public static string ModulePath { get { return Path.Combine(RootPath, "module"); } }
    public static string ConfigPath { get { return Path.Combine(RootPath, "conf"); } }

  }
}

第二種:
利用宏定義

#define DEBUG// C#的宏定義必須出現(xiàn)在所有代碼之前。當(dāng)前我們只讓DEBUG宏有效。
using System.Diagnostics;  //必須包含這個(gè)包

#define DEBUG

using System.Diagnostics; 

namespace TestConsole
{
  class ToolKit
  {
    [ConditionalAttribute("LI")]       // Attribute名稱的長記法
    [ConditionalAttribute("DEBUG")]
    public static void Method1() { Console.WriteLine("Created By Li, Buged.11"); }

    [ConditionalAttribute("LI")]
    [ConditionalAttribute("NOBUG")]
    public static void Method2() { Console.WriteLine("Created By Li, NoBug."); }

    [Conditional("ZHANG")]          // Attribute名稱的短記法
    [Conditional("DEBUG")]
    public static void Method3() { Console.WriteLine("Created By Zhang, Buged.11"); }

    [Conditional("ZHANG")]
    [Conditional("NOBUG")]
    public static void Method4() { Console.WriteLine("Created By Zhang, NoBug."); }
  }
    static void Main(string[] args)
    {
      ToolKit.Method1();
      ToolKit.Method2();
      ToolKit.Method3();
      ToolKit.Method4();
    }
  }
}
您可能感興趣的文章:

相關(guān)文章

  • 基于Unity實(shí)現(xiàn)2D邊緣檢測

    基于Unity實(shí)現(xiàn)2D邊緣檢測

    這篇文章主要介紹了如何利用Unity實(shí)現(xiàn)2D邊緣檢測,從而達(dá)到人物描邊效果。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-04-04
  • C#連接MySQL的兩個(gè)簡單代碼示例

    C#連接MySQL的兩個(gè)簡單代碼示例

    這篇文章主要介紹了C#連接MySQL的簡單代碼示例,需要的朋友可以參考下
    2017-06-06
  • C#如何連接使用Zookeeper

    C#如何連接使用Zookeeper

    Zookeeper作為分布式的服務(wù)框架,雖然是java寫的,但是強(qiáng)大的C#也可以連接使用。而現(xiàn)在主要有兩個(gè)插件可供使用,分別是ZooKeeperNetEx和Zookeeper.Net,個(gè)人推薦使用ZooKeeperNetEx做開發(fā),本文也已介紹ZooKeeperNetEx為主
    2021-06-06
  • 基于C#設(shè)計(jì)一個(gè)雙色球選號工具

    基于C#設(shè)計(jì)一個(gè)雙色球選號工具

    這篇文章主要為大家詳細(xì)介紹了如何利用C#設(shè)計(jì)實(shí)現(xiàn)一個(gè)雙色球選號工具,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • C#線程處理系列之線程池中的I/O線程

    C#線程處理系列之線程池中的I/O線程

    這篇文章主要介紹了C#線程處理系列之線程池中的I/O線程,在這篇文章中將介紹如何用線程池中的I/O線程來執(zhí)行I/O操作,感興趣的小伙伴們可以參考一下
    2016-04-04
  • C#中神器類BlockingCollection的實(shí)現(xiàn)詳解

    C#中神器類BlockingCollection的實(shí)現(xiàn)詳解

    如果你想玩轉(zhuǎn)C#?里面多線程,工廠模式,生產(chǎn)者/消費(fèi)者,隊(duì)列等高級操作,就可以和我一起探索這個(gè)強(qiáng)大的線程安全提供阻塞和限制功能的C#神器類BlockingCollection吧
    2023-02-02
  • C#實(shí)現(xiàn)矩陣轉(zhuǎn)置的方法

    C#實(shí)現(xiàn)矩陣轉(zhuǎn)置的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)矩陣轉(zhuǎn)置的方法,實(shí)例分析了C#針對矩陣運(yùn)算的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • C#基礎(chǔ)入門之算法:交換

    C#基礎(chǔ)入門之算法:交換

    本文主要介紹了C#中算法:交換的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來看下吧
    2017-03-03
  • C#實(shí)現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中

    C#實(shí)現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中

    這篇文章主要介紹了C#實(shí)現(xiàn)把txt文本數(shù)據(jù)快速讀取到excel中,本文直接給出示例代碼,需要的朋友可以參考下
    2015-06-06
  • C#遍歷文件夾獲取指定后綴名文件

    C#遍歷文件夾獲取指定后綴名文件

    這篇文章主要為大家詳細(xì)介紹了C#遍歷文件夾獲取指定后綴名文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03

最新評論