Delphi 7中的TGUID比较

10
除了将两个TGUID元素转换为字符串(使用guidtostring函数)并计算表达式外,在Delphi 7中还有其他比较TGUID元素的方法吗?
2个回答

26

5

就像TOndrej建议的那样,可以使用IsEqualGUID()(或IsEqualIID())函数。由于TGuid是字节的二进制数组,因此您也可以使用SysUtuils.CompareMem()函数进行比较。


作为旁注:GUID 不是一个字节数组,它是一个紧凑的结构体,包含 DWORDS、WORDS 和 BYTES,总长度为 16 字节。您可以通过查看 TGUID 类型来查找该结构体。 - Ritsaert Hornstra
5
我的意思是,它是一种固定长度的二进制数据类型,没有任何填充。因此,CompareMem() 可以作为 IsEqualGUID() 的替代方法,即: CompareMem(@Guid1, @Guid2, SizeOf(TGuid)) - Remy Lebeau
...而且CompareMem()似乎稍微快一些。 - JensG

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接