由於繼承導致物件的指標和引用具有兩種不同的型別:
靜態型別和
動態型別。
靜態型別:指標或者是引用宣告時的型別。
動態型別:由他實際指向的型別確定。
例如:gameobject *pgo=
//pgo靜態型別是
gameobject *
new spaceship;
//動態型別是
spaceship*
asterioid *pa = new asterioid;
//pa的靜態型別是
asterioid *
//動態型別也是
asterioid *
pgo = pa;
//pgo靜態型別總指向
gameobject *
//動態型別指向了
asterioid *
gameobject &rgo = *pa;
//rgo的靜態型別是
gameobject
//動態型別是
asterioid
C 物件的靜態型別與動態型別
在c 當中 因為出現了繼承 繼承導致物件的指標和引用具有兩種不同的型別 靜態型別 和 動態型別 靜態型別 指標或者是引用宣告時的型別。動態型別 由他實際指向的型別確定。class base class derived public base base base base的靜態型別是 base new...
C 物件的靜態型別和動態型別
由於繼承導致物件的指標和引用具有兩種不同的型別 靜態型別和動態型別。靜態型別 指標或者是引用宣告時的型別。動態型別 由實際指向的型別確定。gameobject pgo new spaceship pgo 靜態型別是 gameobject 動態型別是 spaceship asterioid pa ne...
靜態型別與動態型別
為了支援c 的多型性,才用了動態繫結和靜態繫結。理解他們的區別有助於更好的理解多型性,以及在程式設計的過程中避免犯錯誤,需要理解四個名詞 1 物件的靜態型別 物件在宣告時採用的型別。是在編譯期確定的。2 物件的動態型別 目前所指物件的型別。是在執行期決定的。物件的動態型別可以更改,但是靜態型別無法更...