【问题标题】:What does '@' at beginning of a variable mean? [duplicate]变量开头的“@”是什么意思? [复制]
【发布时间】:2011-06-11 05:23:02
【问题描述】:

可能重复:
What does the @ symbol before a variable name mean in C#?

我在传递给我的代码中看到过几次:

try {
   //Do some stuff
}
catch(Exception @exception)
{
   //Do catch stuff
}

谁能解释一下 Exception 变量开头的“@”的用途?

【问题讨论】:

标签: c#


【解决方案1】:

它允许您使用保留关键字命名变量。

例如:

var @class = "something"; // OK
var class = "something"; // Compilation error

【讨论】:

    【解决方案2】:

    Resharper 有时会输出它们,如果变量的名称接近类名或命名空间,我相信它只是给它一个唯一的非冲突名称

    【讨论】:

    • @ 不是名称的一部分,因此不会为其添加任何唯一性。在给出的例子中它是多余的。如果名称是保留字,ReSharper 会(正确地)输出它们。
    【解决方案3】:

    Michael Meadows 对重复问题的无耻回答如下。

    @ 符号允许您使用保留字。例如:

    int @class = 15; 
    

    上述方法有效,而以下方法无效:

    int class = 15; 
    

    【讨论】:

      猜你喜欢
      • 2010-10-07
      • 2011-05-22
      • 1970-01-01
      • 2021-12-16
      • 1970-01-01
      • 1970-01-01
      • 2018-10-08
      • 1970-01-01
      • 2012-03-17
      相关资源
      最近更新 更多