C#中的@符號用法


C#中的@符號其實有很多的用法,我們來看看@有什么神奇之處。

1.限定字符串

用 @ 符號加在字符串前面表示其中的轉義字符“不”被處理。

如果我們寫一個文件的路徑,例如"D:/文本文件"路徑下的text.txt文件,不加@符號的話寫法如下:

string fileName = "D://文本文件//text.txt";

如果使用@符號就會比較簡單:

string fileName = @"D:/文本文件/text.txt";

2.讓字符串跨行

有時候一個字符串寫在一行中會很長(比如SQL語句),不使用@符號,一種寫法是這樣的:

string strSQL = "SELECT * FROM HumanResources.Employee AS e"    + " INNER JOIN Person.Contact AS c"    + " ON e.ContactID = c.ContactID"    + " ORDER BY c.LastName";

加上@符號后就可以直接換行了:

string strSQL = @"SELECT * FROM HumanResources.Employee AS e    INNER JOIN Person.Contact AS c    ON e.ContactID = c.ContactID    ORDER BY c.LastName";

3.在標識符中的用法

C#是不允許關鍵字作為標識符(類名、變量名、方法名、表空間名等)使用的,但如果加上@之后就可以了,例如:

namespace @namespace...{class @class...{publicstaticvoid @static(int @int)...{if (@int > 0)...{                System.Console.WriteLine("Positive Integer");            }elseif (@int == 0)...{                System.Console.WriteLine("Zero");            }else...{                System.Console.WriteLine("Negative Integer");            }        }    }}

 

C#中的@符號的使用及注意事項

編程中很多細節問題我們都要十分的注意,要不一個小小的字母錯誤就能引起程序的無法運行,我自己就經歷過這樣的事情,對於編程中應該注意的問題,我們要經常的收集整理自己的一本手冊,今天我們來講下C#中的@符號的使用及注意事項。

  一 字符串中的用法

  字符@表示,其后的字符串是個“逐字字符串”(verbatim string)。

  @只能對字符串常量作用。

  1.用於文件路徑

 

以下是引用片段:  string s_FilePath ="C:\\Program Files\\Microsoft.NET\\test.txt";

   

 

  相當於

 

以下是引用片段:  string s_FilePath =@"C:\Program Files\Microsoft.NET\test.txt";

   

 

  2.用@表示的字符串能夠跨越數行。用於在CS中寫JS或SQL代碼比較方便。

 

以下是引用片段:  string s_MultiRows = @"Line1   Line2   Line3";   string s_JavaScript = @"   ";

   

 

  二 標識符中的用法

  在 C# 規范中, @ 可以作為標識符(類名、變量名、方法名等)的第一個字符,以允許C# 中保留關鍵字作為自己定義的標識符。

  如

 

以下是引用片段:  class @class   {   public static void @static(bool @bool) {   if (@bool)   System.Console.WriteLine("true");   else   System.Console.WriteLine("false");   }   }   class Class1   {   static void M() {   clu0061ss.stu0061tic(true);   }   }

   

 

  注意,@ 雖然出現在標識符中,但不作為標識符本身的一部分。

  因此,以上示例,定義了一個名為 class 的類,並包含一個名為 static 的方法,以及一個參數名為了 bool 的形參。

  這樣,對於跨語言的移植帶來了便利。因為,某個單詞在 C# 中作為保留關鍵字,但是在其他語言中也許不是。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM