Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 什么是'@';在变量均值的开始处?_C# - Fatal编程技术网

C# 什么是'@';在变量均值的开始处?

C# 什么是'@';在变量均值的开始处?,c#,C#,可能重复: 我已经在传递给我的代码中多次看到这一点: try { //Do some stuff } catch(Exception @exception) { //Do catch stuff } 谁能解释一下异常变量开头的“@”的用途吗?它允许您使用保留关键字命名变量 例如: var @class = "something"; // OK var class = "something"; // Compilation error int @class = 15; Res

可能重复:

我已经在传递给我的代码中多次看到这一点:

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

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

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

例如:

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

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

Michael Meadows无耻的翻版,下面是重复问题的答案

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

var @class = "something"; // OK
var class = "something"; // Compilation error
int @class = 15; 
当以下情况不起作用时,上述方法起作用:

int class = 15; 

一个傻瓜的傻瓜,@James我总是被我冗长但彻底研究过的答案弄得神魂颠倒。我决定这次走捷径。:)但是我不能。。。所以我就呆在这里,装傻。@James:别担心!mod将处理它(可能是合并):@不是名称的一部分,因此不会为其添加任何唯一性。在给出的例子中,这是多余的。如果名称是保留字,ReSharper(正确)输出它们。