我从硬件接收到多个位域。
我的代码最初是:
然后我想起了标志枚举,并考虑将其更改为:
“等等”、“诸如此类”的意思。
“哪种是最佳实践?每种方法有什么优缺点?”编辑:我想知道这两种方法之间是否有任何实际差异,特别是在性能方面。我不希望征求关于编码风格的意见(除非它来自Microsoft指南),因为那会使问题被关闭为无建设性的。谢谢。
我的代码最初是:
public readonly byte LowByte;
public bool Timer { get { return (LowByte & 1) == 1; } }
然后我想起了标志枚举,并考虑将其更改为:
[Flags]
public enum LowByteReasonValues : byte
{
Timer = 1,
DistanceTravelledExceeded = 2,
Polled = 4,
GeofenceEvent = 8,
PanicSwitchActivated = 16,
ExternalInputEvent = 32,
JourneyStart = 64,
JourneyStop = 128
}
public readonly LowByteReasonValues LowByte;
public bool Timer { get { return (LowByte & LowByteReasonValues.Timer) == LowByteReasonValues.Timer; } }
“等等”、“诸如此类”的意思。
“哪种是最佳实践?每种方法有什么优缺点?”编辑:我想知道这两种方法之间是否有任何实际差异,特别是在性能方面。我不希望征求关于编码风格的意见(除非它来自Microsoft指南),因为那会使问题被关闭为无建设性的。谢谢。