【发布时间】:2014-01-08 19:22:33
【问题描述】:
我想使用类似于link 的东西!部分源代码如下所示:
public struct Vector3
{
public static Vector3 zero { get; }
}
这个函数返回一个已经初始化的向量(每个轴都为 0)。这可能吗,因为它是一个结构?这就是我所拥有的:
public class WorldBlock
{
public enum e_WorldBlockType
{
Undef,
Earth,
Stone,
Air // no block set
}
public static WorldBlock Empty { get; }
public e_WorldBlockType BlockType { get; set; }
public bool IsWalkable { get; set; }
public WorldBlock(e_WorldBlockType blockType = e_WorldBlockType.Undef, bool isWalkable = false)
{
this.BlockType = blockType;
this.IsWalkable = isWalkable;
}
}
但我明白了:error CS0840: 'WorldBlock.Empty.get' must have a body because it is not marked abstract or extern. The property can be automatically implemented when you define both accessors
正文应该怎么写?
编辑:
如果我添加例如private set,它会编译,但如果我使用它,我会得到一个空指针异常。
【问题讨论】:
-
我已经编辑了你的标题。请参阅“Should questions include “tags” in their titles?”,其中的共识是“不,他们不应该”。
-
在回答这个问题时,有多少人会重新发明自己的,buggy
Lazy<T>?
标签: c# properties static