程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#預處置器指令的用法實例剖析

C#預處置器指令的用法實例剖析

編輯:C#入門知識

C#預處置器指令的用法實例剖析。本站提示廣大學習愛好者:(C#預處置器指令的用法實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#預處置器指令的用法實例剖析正文


本文實例講述了C#預處置器指令的用法。分享給年夜家供年夜家參考。詳細用法剖析以下:

C#預處置器指令是在編譯時挪用的。預處置器指令(preprocessor directive)告知C#編譯器要編譯哪些代碼,並指出若何處置特定的毛病和正告。C#預處置器指令還可以告知C#編纂器有關代碼組織的信息。

1. 界說符號和撤消符號界說的預處置指令#define 和 #undef

預處置指令都以#號開首並位於行首後面可以湧現空格符。
#define DEBUG
#define ISSAY 
下面的語句界說了連個個預編譯的符號,他的感化域是他所處全部文件,界說符號的語句必需湧現在一切代碼之前, 不然編譯的時刻會湧現一個異常: 不克不及在文件的第一個標志以後,界說或撤消界說預處置器符號 。我們也能夠應用#undef來撤消一個符號的界說,先來看個例子。
#define DEBUG
#undef DEBUG
#define ISSAY  
 
using System;  
namespace JustDoIt  
{  
    class Program  
     {  
        static void Main(string[] args)  
         {
             #if DEBUG  
             Console.Write("debug.");
             #endif
             #if ISSAY  
             Console.Write("hello.");
         #else  
             Console.Write("you can say nothing.");
             #endif  
 
         Console.ReadLine();  
         }  
     }  
}  
//輸入:hello
從下面的代碼我們可以看到第一樣等一了符號DEEBU,緊接著第二行撤消了這個符號的界說,也就是相當於沒有界說一樣,所以法式運轉的時刻不會履行Console.Write("debug.")這個語句。第三行界說了ISSAY符號,所以法式輸入了“hello”,假如我們把他正文了或許是刪除,那末法式會輸入“you can say nothing“。我們可以初步看到經由過程界說預編譯的符號,可以掌握編譯器選擇性地編譯代碼。下面的代碼中還有#if和#endif如許的符號,這些是前提編譯指令。

2. 前提編譯指令

前提編譯指令有4個,除我們從第一個示例看到的#if、#else、#endif以外,還有一個#elif。我們對這些指令應當有是曾了解的感到,他們跟我們日常平凡編寫代碼的時刻試用的前提語句是一樣的,前提語句是用來掌握法式流的,而這些前提編譯指令是用來掌握編譯器選擇性地編譯代碼的。

一條#if語句可以有0條或多條#elif語句,也能夠有0條或一條#else 語句,但必需包含一條#endif語句必需有,不然會湧現語法毛病。

3. #region和#endregion

這兩個符號日常平凡我們確定用的許多了,就是把一些相干的代碼折疊到一路,如許對我們在一個文件中編寫較長的代碼異常有效,我們可以把一組相干的代碼用#region和#endregion組織在一路而且可以在#region前面加上解釋的文字,當這組代碼被折疊起來的時刻,我們可以看到#region前面的解釋文字。

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved