Suppose you have a function that creates a reference to a COM object:
There are a few issues with this design.
First of all, it requires that whoever uses your header file
must have included first,
since that's where is defined.
You could solve that problem by putting
at the top of
,
but that creates its own problems.
For example, ...