Delphi - CompareStr和CompareString之间的差异

时间:2010-03-19 00:33:43

标签: delphi string-comparison

我希望有人可以为我阐明一下: 在Delphi 2009中,CompareStr(在SysUtils中定义)和CompareString(来自Windows API)函数之间有什么区别?

由于可用的比较标志,两者都允许您指定要使用的语言环境,Windows是否更“完整”?那么一个比另一个快吗?

1 个答案:

答案 0 :(得分:6)

CompareString使用区域设置信息,以便像ae和æ这样的东西被视为匹配,并且排序适用于地理区域。

CompareStr('',loInvariantLocale)只是字符串中字符的逐字节比较。 CompareStr('',loUserLocale)在内部调用CompareString,因此除了CompareString可以接受的其他标志之外,它们是相同的。它也是内联的,所以你不应该看到它与直接调用CompareString之间的速度有任何差别。