溫馨提示×

溫馨提示×

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

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

C#中怎么實現(xiàn)預處理

發(fā)布時間:2021-07-19 15:27:46 來源:億速云 閱讀:126 作者:Leah 欄目:編程語言

這篇文章給大家介紹C#中怎么實現(xiàn)預處理,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

C#預處理

C#預處理階段是一個文本到文本的轉(zhuǎn)換階段,在預處理過程中,使能進行代碼的條件包含和排除。

pp-un it:  pp-gro up opt  pp-gro up:  pp-gro up-part  pp-gro up pp-group-part  pp-gro up-part:  pp-tokensopt new-line  pp-de claration  pp-if -section  pp-con trol-line  pp-l ine-number  pp-tokens:  pp-token  pp-tokens pp-token  pp-token:  identifi er  keyword  literal  operator-or-punctuator  new-line:  The carriage return character (U+000D)  The line feed character (U+000A)  The carriage return character followed by a line feed character  The line separator character (U+2028)  The paragraph separator character (U+2029)

C#預處理聲明

在預處理過程中,為了使用名稱可以被定義和取消定義。#define 定義一個標識符。#undef “反定義”一個標識符,如果一個標識符在以前已經(jīng)被定義了,那么它就變成了不明確的。如果一個標識符已經(jīng)被定義了,它的語意就等同于true ;如果一個標識符沒有意義,那么它的語意等同于false.

pp-de claration:  #define pp-identifier  #undef pp-identifier

來看看這個例子:

#define A  #undef B  class C  {  #if A  void F()  #else  void G()  #endif  #if B  void H()  #else  void I()  #endif  }  變?yōu)?  class C  {  void F()  void I()  }

如果有一個pp-unit, 聲明就必須用pp- token 元素進行。換句話說,#define 和#undef 必須在文件中任何 “真正代碼”前聲明,否則在編譯時會發(fā)生錯誤。因此,也許會像下面的例子一樣散布#if 和#define:

define A  #if A  #define B  #endif  namespace N  {  #if B  class Class1  #endif  }

因為#define 放在了真實代碼后面,所以下面的例子是非法的:

#define A  namespace N  {  #define B  #if B  class Class1  #endif  }

關于C#中怎么實現(xiàn)預處理就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI