我想知道将枚举转换为Enum是否会装箱。
因此,我是否应该编写表达式主体成员来减小对象的大小。
因此,我是否应该编写表达式主体成员来减小对象的大小。
public Fruit FruitType => (Fruit) Type; // unboxing?
public override Enum Type => (Fruit) (Data[0] & 0xF0); // boxing?
是否具有防止装箱和拆箱的属性?
public Fruit FruitType => (Fruit) (Data[0] & 0xF0);
public override Enum Type { get; } = (Fruit) (Data[0] & 0xF0); // assigned once.
假设我有成千上万个实例,并且该属性被使用了约60,000次。
public override Enum Type { get; } => FruitType;
。Jitter可能会内联FruitType
getter,因此不应该有性能损失。 - Heinzipublic Fruit FruitType => (Fruit) Type;
这里的Type
基本上会变成(Fruit) (Data[0] & 0xF0)
。@Heinzi - M.kazem Akhgary