необязательный атрибут

Атрибут [необязательный] задает необязательный параметр для функции-члена.

return-type function-name([optional [, other-attributes]] parameter-type parameter-name)

Параметры

возвращаемый тип

Указывает тип возвращаемого значения функции.

имя функции

Указывает имя функции, как определено в файле IDL.

другие атрибуты

Ноль или более необязательные атрибуты MIDL.

тип параметра

Тип данных необязательного параметра.

имя параметра

Указывает имя необязательного параметра.

Замечания

Атрибут [необязательный] действителен только в том случае, если параметр имеет тип VARIANT или VARIANT *.

Компилятор MIDL принимает следующее упорядочение параметров (слева направо):

  1. Обязательные параметры (параметры, которые не имеют атрибутов [defaultvalue] или [необязательный]),
  2. Необязательные параметры с атрибутом [defaultvalue] или без нее,
  3. Параметры с атрибутом [необязательно] и без атрибута [defaultvalue] ,
  4. Параметр [lcid] , если таковой есть,
  5. Параметр [retval]

Нельзя применить атрибут [необязательный] к параметру, который также имеет атрибуты [lcid] или [retval] .

Примеры

HRESULT MyFunc([in, optional] VARIANT Param1, 
               [out, optional] VARIANT Param2)

См. также

Defaultvalue

Создание библиотеки типов с помощью MIDL

Lcid

Пример ФАЙЛА ODL

Синтаксис файла ODL

Retval