2010-03-19 59 views
5

我希望有人能提供一些線索這光我之間的差異?德爾福CompareStr和CompareString

由於可用的比較標誌,兩者都允許您指定要使用的語言環境,是Windows更簡單的「完整」嗎?其中一個比另一個快嗎?

回答

6

CompareString使用語言環境信息,以便像ae和æ這樣的內容被視爲匹配,並且排序適合於地理區域。

CompareStr('',loInvariantLocale)只是字符串中字符的逐字節比較。 CompareStr('',loUserLocale)在內部調用CompareString,所以它們是相同的,除了CompareString可以接受的附加標誌。它也是內聯的,所以你不應該看到它與直接調用CompareString之間的速度差異。

+0

感謝Craig, 我不確定,因爲CompareStr的代​​碼(程序集)沒有引用CompareString - 或者至少我沒有看到它:o) – Bourgui 2010-03-19 12:41:15