我发现你可以用C#中的'@'字符开始你的变量名.在我的C#项目中,我使用的是用Java编写的Web服务(我添加了对我的项目的Web引用).WSDL中定义的一个接口对象有一个名为"params"的成员变量.显然,这是C#中的保留字,因此您不能拥有名为"params"的成员变量的类.生成的代理对象包含一个如下所示的属性:
public ArrayList @params {
get { return this.paramsField; }
set { this.paramsField = value; }
}
Run Code Online (Sandbox Code Playgroud)
我搜索了VS 2008 c#文档,但找不到任何相关信息.搜索谷歌也没有给我任何有用的答案.那么变量/属性名称中'@'字符的确切含义或用法是什么?
我曾多次看到ReSharper生成的代码如下所示:
delegate void myHandler(int i);
myHandler myHandlerContainer;
...
foreach (Delegate @delegate in myHandlerContainer.GetInvocationList())
{...}
Run Code Online (Sandbox Code Playgroud)
@delegate中的' @ ' 是否赋予该变量任何特殊的语义含义?
或者这只是我之前没遇到过的惯例?