Tho*_*mas 7 c# keyword reserved
我需要设计一个类,其中一个属性名称必须是return,但是当我创建一个属性名称时,return我得到一个错误.
经过一些研究后,我发现可以通过@在C#中添加前缀或将其括[]在VB.NET的方括号中来使用保留关键字作为属性或变量名.例如:
var @class = new object();
Run Code Online (Sandbox Code Playgroud)
所以这是我的类设计代码.
public class Person
{
string _retVal;
public string @return
{
get { return _retVal; }
set { _retVal = value; }
}
}
...
Person p = new Person();
p.@return = "hello";
Run Code Online (Sandbox Code Playgroud)
现在我没有收到任何错误,但是当我尝试访问属性名称时,return我需要写出类似的名称@return,这是我不想要的.我想要访问属性名称p.return = "hello";而不是p.@return = "hello";所以我想知道是否有任何方法可以做到这一点?
Mar*_*ell 26
你不能.它是一个保留关键字.这意味着 "你不能".与"上下文关键字"形成对比,后者通常意味着"我们之后添加了这些,因此我们需要它在一些预先存在的场景中工作".
这里温和的答案是:使用@return.
这里更好的答案是:重命名您的财产.也许吧ReturnValue.
例如,还有一个选项Return- 但您可能还需要考虑不区分大小写的语言.