Smart pointer class predeclaration
<p>I have a header file:</p>

<pre><code>class A
{
public:
    DeviceProxyPtr GetDeviceProxy(); 
};
</code></pre>

<p>DeviceProxyPtr is defined in a different header file like this:</p>

<pre><code>typedef SmartPtrC&lt;DeviceProxyC&gt; DeviceProxyPtr;
</code></pre>

<p>I don't want to include DeviceProxyPtr definition header. 
If a return type was DeviceProxy* I could simply use predeclaration <code>class DeviceProxy</code>. 
Is there any way to do the same with my smart pointer class?</p>
