<code>#include <iostream></code>
<code>using</code> <code>namespace</code> <code>std;</code>
<code>class</code> <code>Bass{};</code>
<code>class</code> <code>Derived:</code><code>public</code> <code>Bass{};</code>
<code>//這裡如果為protected或者是private繼承的話,則無法向上構造</code>
<code>int</code> <code>main(</code><code>void</code><code>){</code>
<code> </code><code>Derived d;</code>
<code> </code><code>Bass* pb = &d;</code><code>//向上構造(安全的)</code>
<code> </code><code>cout << pb << </code><code>','</code> <code><< &d << endl;</code><code>//兩個位址是一樣的</code>
<code> </code><code>//Base* pb = static_cast<Base*>(&d);靜态類型轉化</code>
<code> </code><code>return</code> <code>0;</code>
<code>}</code>
本文轉自神ge 51CTO部落格,原文連結:http://blog.51cto.com/12218412/1867087