我想知道属性中的“值”关键字采用什么类型。
所以:
public class Test
{
string _numberAsString;
int _number = -1;
public Test() {}
public string NumberAsString
{
get { return _numberAsString; }
set { _numberAsString= value; }
}
public int Number
{
get { return int.Parse(_numberAsString); }
set { _number = value; }
}
}
//elsewhere
Test t = new Test();
t.Number = 5;
现在,正如我所料,这不会编译。“值”的类型由属性的返回类型决定,对吗?我找不到任何效果,也许它太明显了(我没有阅读语言规范,大概那里有一些东西)。
我问,因为我想使用一种类型设置属性,然后将其转换为 getter 的类型。我想这真的没有意义。
看来我必须通过创建几个方法来实现这一点。