A
Akupaka
Ну тогда так и пиши )) Чего мучаешься, раз знаешь решение?Не, мне интереснее писать так
Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе
Ну тогда так и пиши )) Чего мучаешься, раз знаешь решение?Не, мне интереснее писать так
Да не мучаюсь я. Просто интересно было узнать, оптимизирует ли компилятор такой вызов или нет. Похоже, что нет.Ну тогда так и пиши )) Чего мучаешься, раз знаешь решение?
Что это такое ты имел в виду за переборы?когда компилятор додумаетя вместо вызова функций сразу жарить константы(это полный перебор типа)
Set Doc = ws.CurrentDocument.Document
Эта баго-фича всегда была, даже где-то здесь было обсуждение...Если открыть документ (док-А), затем начать писать письмо из почты и не закрыв/не отправив его, переключиться на этот док-А.
Нажать данную кнопку, то в переменную Doc запишется ваше письмо из почты.
Тесты в студию! Для java, javascript согласен, но для lotusscript вызывает сомнение.И перестал бы делать такие проверки:
так гораздо лучше:Код:If CurDoc.old_number(0)<>"" Then
Код:If Len(ndCurrent.getItemValue("ItemName")(0)) <> 0 Then
(Declarations)
Dim TICKS_PER_SEC As Long
Sub Initialize
TICKS_PER_SEC = Getthreadinfo(7)
test_String_Compare
End Sub
Sub test_String_Compare
'данный тест сравнивает явное сравнение строки с пустой строкой и проверку длины строки
Const count = 1000000
Print Cstr(Now) + ": " + Cstr(Getthreadinfo(1)) + ":"
Call test_String_Compare_EqualsString(count)
Call test_String_Compare_EqualsLen(count)
Call test_String_Compare_EqualsString(count)
Call test_String_Compare_EqualsLen(count)
Call test_String_Compare_EqualsString(count)
Call test_String_Compare_EqualsLen(count)
Call test_String_Compare_EqualsString(count)
Call test_String_Compare_EqualsLen(count)
Call test_String_Compare_EqualsString(count)
Call test_String_Compare_EqualsLen(count)
End Sub
Sub test_String_Compare_EqualsString(count As Long)
Dim v As Variant
Dim startTime As Double
Dim endTime As Double
Dim i As Long
Dim bool As Boolean
Dim s As String
s = "dfartethwrghdgsdgas"
startTime = Getthreadinfo(6)
For i = 0 To count
bool = (s = "")
Next
endTime = Getthreadinfo(6)
Print Cstr(Getthreadinfo(1)) & ". Timer = " & Format((endTime - startTime) / TICKS_PER_SEC, "0.000") & " s"
End Sub
Sub test_String_Compare_EqualsLen(count As Long)
Dim v As Variant
Dim startTime As Double
Dim endTime As Double
Dim i As Long
Dim bool As Boolean
Dim s As String
s = "dfartethwrghdgsdgas"
startTime = Getthreadinfo(6)
For i = 0 To count
bool = (Len(s) = 0)
Next
endTime = Getthreadinfo(6)
Print Cstr(Getthreadinfo(1)) & ". Timer = " & Format((endTime - startTime) / TICKS_PER_SEC, "0.000") & " s"
End Sub
В этом случае будет сравниваться время выполнения кучи "лишнего" кода, причем время старта агента, инициализации переменных и сборки мусора будет существенно больше времени выполнения операции сравнения. Вес брутто будет на порядки больше веса нетто.если уж тестировать - надо было циклическим вызовом агента (чтобы был сборщик и инициализация объектов)
Адрес студии?Тесты в студию!
Equal = 0.437
Len = 0.406
Equal = 0.422
Len = 0.406
зато будет учтен именно важный фактор различияВ этом случае будет сравниваться время выполнения кучи "лишнего" кода, причем время старта агента, инициализации переменных и сборки мусора будет существенно больше времени выполнения операции сравнения. Вес брутто будет на порядки больше веса нетто.
Всегда считал, что проверка на неравенство выполняется быстрее, чем 'больше' или 'меньше'.и писать <>0 как-то "неэстетично" - >0
Обучение наступательной кибербезопасности в игровой форме. Начать игру!