Dot-Net
為什麼 .NET GUID 中有破折號?
為什麼 .NET GUID 中有破折號?GUID 的大多數實現中是否有破折號,或者它只是微軟的東西?
簽,
741ecf77-9c92-4435-8e6b-85975bd13452
從技術上講, GUID中沒有“破折號” 。GUID 是一個 128 位的值,通常以以下方式儲存(此處使用 C# 表示結構):
public struct Guid { public ulong Data1; public ushort Data2; public ushort Data3; public fixed byte Data4[8]; }破折號位於GUID的字元串表示形式中。
破折號是可選的,在 GUID 的字元串表示中不是必需的。
也就是說,破折號的位置存在歷史原因,與 GUID 的生成方式有關,但該歷史語義不再適用。