91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中預編譯指令怎么用

發布時間:2021-12-01 11:22:52 來源:億速云 閱讀:181 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關C#中預編譯指令怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1.#define和#undef

用法:

#define DEBUG

#undef DEBUG

#define告訴編譯器,我定義了一個DEBUG的一個符號,他類似一個變量,但是它沒有具體的值,可以將它看為一個符號而已。#undef就是刪除這個符號的定義。如果符號DEBUG沒定義過,則#undef不起作用,否則#define不起作用。二者都必須放在源代碼之前。二者的順序看代碼的順序:

#define DEBUG

#undef  DEBUG

這樣的話,DEBUG是沒有定義的,如果二者換個順序,編譯器就認為DEBUG被定義了

2.#if、#elif、#else、#endif

這個告訴編譯器進行編譯代碼的流程控制。考慮下面代碼:

#if DEBUG
   Console.Write("debug");
#elif RELEASE
    Console.Write("realse");
#else
    Console.Write("other");
#endif

以上代碼就是說如果定義了DEBUG則輸出debug,定義了RELEASE,則輸出realse,否則輸出other。如果定義了DEBUG和REALSE會怎么樣呢?各位可以自己試一下。

3.#warning、#error

通過這兩個指定可以告訴編譯器,出一個警告還是錯誤信息。除了錯誤信息以后,編譯將停止。

參考下面的代碼:

#if DEBUG                     ------〉該DEBUG如果選中當前狀態為DEBUG,則這個默認為#define
   #warning “現在是Ddbug狀態”
#elif RELEASE                 ------〉如果選中release狀態的話,這個確沒有默認,不知道我試驗的對不對
    #warning “現在是Realse狀態”
#else
    #error“并清楚什么狀態”
#endif

4.#region 和#endregion

這個兩個用來組成代碼塊

5.#line (這個指定的使用不太明白,參考MSDN)

這個指令可以改jian變編譯器在警告和錯誤信息中顯示的文件名和行號信息,用#line default把行號恢復為默認的行號。

下面的示例說明如何報告與行號關聯的兩個警告。#line 200 指令迫使行號為 200(盡管默認值為 #7)。另一行 (#9) 作為默認 #line 指令 的結果跟在通常序列后。

示例1:

// preprocessor_line.cs
public class MyClass2
{
   public static void Main() 
   {
      #line 200
      int i;   // CS0168 on line 200
      #line default
      char c;   // CS0168 on line 9
   }
}

示例2:

下面的示例說明調試器如何忽略代碼中的隱藏行。運行此示例時,它將顯示三行文本。但是,當設置如示例所示的斷點并按 F10 鍵逐句通過代碼時,您將看到調試器忽略了隱藏行。另請注意,即使在隱藏行上設置斷點,調試器仍會忽略它。

// preprocessor_linehidden.cs
using System;
class MyClass 
{
   public static void Main() 
   {
      Console.WriteLine("Normal line #1.");   // Set a break point here.
      #line hidden
      Console.WriteLine("Hidden line.");
      #line default
      Console.WriteLine("Normal line #2.");
   }
}

關于“C#中預編譯指令怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

?
AI

富阳市| 梁平县| 荣昌县| 双流县| 孝昌县| 磐安县| 花莲市| 余庆县| 宜兰市| 盐源县| 隆安县| 定西市| 嘉兴市| 桃源县| 泸定县| 牙克石市| 西峡县| 峨边| 迁西县| 唐山市| 新余市| 肇庆市| 武宁县| 隆回县| 南靖县| 浮梁县| 遵化市| 康马县| 拜城县| 蕲春县| 旌德县| 虹口区| 汪清县| 美姑县| 逊克县| 拉孜县| 新绛县| 扎囊县| 平遥县| 永丰县| 镇安县|