结构比较器

Struct comparer

我正在寻找这两个函数:

bool CompareEquality<T>(ref T struct1, ref T struct2); // where T: struct
int Compare<T>(ref T struct1, ref T struct2); // -1,0,1 for sorting

第二个函数将结构视为数字。例如。一个 10 字节的结构就像一个 10 字节的数字一样被简单地比较。

有办法吗?
它应该是高效的,不涉及任何结构的复制,创建新的缓冲区或数组。

更新:

至于C#6.0就没办法了