dual

Помещает интерфейс в IDL-файл как двойной интерфейс.

Синтаксис

[dual]

Замечания

Если двойной атрибут C++ предшествует интерфейсу, он приводит к тому, что интерфейс помещается в блок библиотеки в созданном IDL-файле.

Пример

Следующий код — это блок атрибутов, который использует двойной перед определением интерфейса:

// cpp_attr_ref_dual.cpp
// compile with: /LD
#include <windows.h>
[module(name="MyLibrary")];

[uuid("2F5F63F1-16DA-11d2-9E7B-00C04FB926DA"), dual]

__interface IStatic : IDispatch
{
   HRESULT Func1(int i);
   [   propget,    id(1),    bindable,    displaybind,    defaultbind,    requestedit
   ]
   HRESULT P1([out, retval] long *nSize);
   [   propput,    id(1),    bindable,    displaybind,    defaultbind,    requestedit
   ]
   HRESULT P1([in] long nSize);
};

[cpp_quote("#include file.h")];

Требования

Контекст атрибута Значение
Относится к interface
Повторяемый No
Обязательные атрибуты None
Недопустимые атрибуты dispinterface

Дополнительные сведения см. в разделе Контексты атрибутов.

См. также

Атрибуты IDL
Список атрибутов по использованию
custom
dispinterface
object
__interface