首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么时候在c#中使用@?

什么时候在c#中使用@?
EN

Stack Overflow用户
提问于 2009-06-29 11:59:15
回答 4查看 12K关注 0票数 19

我只在本地路径中使用@ symbol,但是什么时候才能使用@呢?

EN

回答 4

Stack Overflow用户

发布于 2009-06-29 12:03:40

AFAIK,你可以在任何你不想保留事物的默认含义的地方使用@。例如,@class将使class成为标识符。@bool将使bool成为标识符而不是关键字。

你知道@ before字符串的用法。它用于指示按字面意思处理字符串的所有文本,不特殊对待字符串中的任何字符。

编辑:是的,另一件事是@Keyword被编译成了IL中的Keyword

See this Link获取更多详细信息。

票数 30
EN

Stack Overflow用户

发布于 2009-06-29 12:08:50

逐字字符串

在C#中,字符串文字前的@表示verbatim string。在逐字字符串中,只有引号转义序列("")被解析为转义序列;所有其他序列,例如\n\t等都被忽略。

您将看到这种语法用于文件路径等,因为让编译器忽略路径中的反斜杠是很方便的,而不必对它们进行双重转义,例如

代码语言:javascript
复制
var s = @"c:\Some\File\Path.txt";

比起它更容易阅读

代码语言:javascript
复制
var s = "c:\\Some\\File\\Path.txt";

保留字

您还可以使用@作为identifiers的前缀,以便允许在标识符中使用保留字。例如,可以使用@class作为标识符,而不允许使用class。在这个特定的例子中,与klassclazz的常规约定相比,@class没有那么不协调(至少,我发现),这两种约定通常用于在其他语言中绕过这一限制。

票数 25
EN

Stack Overflow用户

发布于 2009-07-02 08:06:26

如果要将关键字用作变量名

代码语言:javascript
复制
string @string = "Hi";
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1057926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档