iid_is

[ iid_is(limited-expression) ]

limited-expression

Specifies a C-language expression. The MIDL compiler supports conditional expressions, logical expressions, relational expressions, and arithmetic expressions. MIDL does not allow function invocations in expressions and does not allow increment and decrement operators.

 

Example

HRESULT    CreateInstance(

    [in] REFIID riid,

    [out, iid_is(riid)] IUnknown ** ppvObject);

 

Remarks

The iid_is pointer attribute specifies the IID of the OLE interface pointed to by an interface pointer. You can use iid_is in attribute lists for function parameters and for structure or union members. The stubs use the IID to determine how to marshal the interface pointer. This is useful for an interface pointer that is typed as a base class parameter.

Files that use the iid_is attribute must be compiled with the MIDL compiler in default mode, that is not using the /osf switch.

See Also

object, uuid