運作時識别 RTTI
運作時識别的功能由兩個運算符來實作:
1)typeid,次運算符會傳回入參的類型
2)dynamic_cast,把基類的指針或引用,轉換成派生類的指針或引用
RTTI的用途:用來在未定義虛函數的場景下,通過typeid和dynamic_cast來模仿多态。即typeid判斷實際指針類型,再由dynamic_cast轉換指針,最後調用非虛函數。(非虛函數跟着指針走)
if(typeid(i)==typeid(int)){
log("i is int type")
}