可以說你有一個基類基地和派生類派生。請讓我明白分配派生類對象到基類指針 - C++
Base b;
Derived *d;
d=&b; // this line gives error, why? I think it asks for typecasting, why?
//When you assign derived class object address to base class pointer, it works fine. Why not the above case works fine
雖然下面的代碼工作,
Derived *d=new Base(); //no typecasting required here, why?
什麼是上述兩種情況的區別?
謝謝!
「我想它會要求輸入」編譯代碼時得到的* actual *錯誤是什麼? –
錯誤:類型Base的值不能分配給派生類型的實體。我知道,我們需要類型轉換。怎麼樣?爲什麼? – CODError
什麼編譯器能得到第二個例子「工作」?因爲它不應該。 – juanchopanza