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