--
※ 貓空行館小小貓 lrobin... 從 140.124.60.156 來此打尖休息
●Origin: 政大資科貓空行館● <bbs.cs.nccu.edu.tw> [140.119.164.150]
class shap
{
.
. -->data
.
public:
virtual show(){}; -->virtual func
};
class rect:public shap
{
public:
virtual show(){ "show a rect !" };
};
class circle:public shap
{
public:
virtual show(){"show a circle "};
};
void main(void)
{
shap *m_shap;
rect *m_rect;
circle *m_circle;
m_rect->set(......);
m_circle->set(......); -->假設有這個函示,用來設定物件....
shap=m_rect;
shap->show();----->此時會秀出 rect
shap=m_circle;
shap->show(); ----->秀出 circle;
}
大致上如此....只是一個流程....
至於 virtual func 是用來管理衍生出的物件(主要應用層面...).....
當一些物件有著相似的性質...並且有相似的行為時
就可使用.....virtual func
而在使用這些相似物件時......你就可用物件所屬的原始類別去管理他
就是一種 a kind of ....的觀念.....
也是 OO 的基本觀念.....
嗯....這樣說你大概不能一時體會......
參考 世紀末軟體革命 1 . 2
兩本書...會有幫助的.....
--
生為程式人,
死為程式鬼.....
--
※ Origin: 元智工學院風之塔 BBS <bbs.yzit.edu.tw> ◆ From: [140.138.252.165]