C#中的@用法 路径、跨行、引用

来源(CSDN论坛-CSDN.NET-中国最大的IT技术社区)

From: http://bbs.csdn.net/topics/350114672

一 字符串中的用法

字符@表示,其后的字符串是个“逐字字符串”(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# 中作为保留关键字,但是在其他语言中也许不是。

Link: http://www.asm32.net/article_details.aspx?id=6097


浏览次数 0 发布时间 2014-01-26 16:32:10 从属分类 C# 【评论】【 】【打印】【关闭
 
| www.asm32.net | 2006版 | 资料中心 | linux | asm/asm32 | C/C++ | VC++ | java | Python | 书签 | ASP.Net书签 | 京ICP备09029108号-1