Why does this not work when split onto 2 lines?
<p>This line:</p>

<pre><code>std::auto_ptr&lt;Ogre::Root&gt; lRoot (new Ogre::Root(lConfigFileName, lPluginsFileName, lLogFileName));
</code></pre>

<p>works fine.
However when I do this it doesn't:</p>

<pre><code>std::auto_ptr&lt;Ogre::Root&gt; lRoot;
lRoot (new Ogre::Root(lConfigFileName, lPluginsFileName, lLogFileName));
</code></pre>

<p>And it reports: <code>error: no match for call to ‘(std::auto_ptr&lt;Ogre::Root&gt;) (Ogre::Root*)’</code>
As far as my limited understanding goes shouldn’t these do the same thing? Or am I missing something major?</p>
