В COM можно иметь необязательные параметры при вызове метода в любой позиции, тогда как в Delphi это возможно только в конце. Поэтому, если вы хотите опустить параметр, вы можете написать EmptyParam
. EmptyParam
- глобальная переменная, инициализированная правильными значениями.
Теперь, когда вы реализуете интерфейс COM, вам также придется иметь дело с этими необязательными параметрами. Способ выяснить эти пропущенные параметры: VarIsEmptyParam
.
Обратите внимание, что даже пустой вариант, заданный в качестве параметра, дает VarIsEmptyParam = false, потому что параметр не опущен. Это просто пусто, но оно есть.
Так обычно есть:
VarIsEmpty(v) ==> not VarIsEmptyParam(v)
и
VarIsEmptyParam(v) ==> not VarIsEmpty(v)