ник: Lukas
Public Declare Function apiTimeGetTime Lib "winmm.dll" Alias "timeGetTime" () As Long
Public Function TestLen() As Long
Dim Start As Long
Dim i As Long
Dim bln As Boolean
Dim str As String
Start = apiTimeGetTime
For i = 0 To 10000000
bln = Len(str) > 0
Next i
TestLen = apiTimeGetTime - Start
End Function
Public Function Test2() As Long
Dim Start As Long
Dim i As Long
Dim bln As Boolean
Dim str As String
Start = apiTimeGetTime
For i = 0 To 10000000
bln = str <> ""
Next i
Test2 = apiTimeGetTime - Start
End Function
?TestLen()
657
640
687
641
703
735
?Test2()
1062
1187
1015
1031
1094
1141
|
То есть: Len(str)>0 работает в полтора раза быстрее. Правда, если разделить разницу на 10 млн итераций, почувствовать разницу будет очень сложно.