对于Unity5(很难确切地知道正在使用什么版本的c#/Mono/.Net),我们的属性完全像这样:
private int _distance;
public int Distance
{
private set
{
_distance = value;
controls.Blahblah(_distance);
}
get
{
Debug.Log("hah!);
return _distance;
}
}
但考虑一下新的“自动属性”在 C# 中,这似乎是这样的
public int Distance {get; set;} // ?
但我不知道如何在 getter/setter 中“做某事”?
或者换句话说,有没有一种方法可以在“手动”创建属性时自动生成支持变量(以及方便性 - 保持其私有)?
重复一下,因为它被标记为重复项,所以我如何在 getter/setter 期间在自动属性惯用语中“做一些事情”...
...或者相反...
如果您编写自己的“手动”属性,如何隐藏、摆脱或自动提供支持者?
请注意,您或其他程序员当然可能会意外触及 _underscore 支持变量:有什么办法可以避免这种情况吗?
如果您想在 getter/setter 中“执行某些操作”(除了分配给字段之外),则不能使用自动属性。对于示例代码描述的用例,自动属性不是一个选项。拥有显式支持字段并没有什么问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)