All COM interface methods described in this document are shown using C++ class names. This naming convention is used for consistency and to differentiate between methods used for different DirectX objects that use the same name, such as QueryInterface, AddRef, and Release. This does not imply that you can use these methods only with C++.
In addition, the syntax provided for the methods uses C++ conventions for consistency. It does not include the this pointer to the interface. When programming in C, the pointer to the interface must be included in each method. The following example shows the C++ syntax for the IDirectDraw2::GetCaps method:
HRESULT GetCaps(
LPDDCAPS lpDDDriverCaps,
LPDDCAPS lpDDHELCaps
);
The same example using C syntax looks like this:
HRESULT GetCaps(
LPDIRECTDRAW lpDD,
LPDDCAPS lpDDDriverCaps,
LPDDCAPS lpDDHELCaps
);
The lpDD parameter is a pointer to the DirectDraw structure that represents the DirectDraw object.