[問題] virtual function 請教
請教各位大大
根據
http://openhome.cc/Gossip/CppGossip/VirtualFunction.html
第13行
注意將衍生類別型態的指標指向基底類別的物件基本是不可行的(雖然可以使用型態轉換
的方式來勉強達成,但並不鼓勵),衍生類別的指標並不能存取基底類別的 成員。
可以舉個簡單的例子嗎?
尤其是"衍生類別的指標並不能存取基底類別的 成員"
我的想法如下:
class car {
public:
virtual void move() { cout << "car move"<<endl;}
} ;
class Benz: public car {
public:
void move() { cout << "Benz move"<<endl;}
} ;
int main(int argc, char* argv[])
{
car c ;
Benz &rB=(Benz &)c;
rB.move();//輸出 car move, 可以存取基底類別的 成員,
//是我搞錯他的意思嗎? 請賜教 ,謝謝。
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.166.10
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1437104571.A.186.html
→
07/17 14:21, , 1F
07/17 14:21, 1F
→
07/17 16:13, , 2F
07/17 16:13, 2F
→
07/17 16:14, , 3F
07/17 16:14, 3F
→
07/17 16:17, , 4F
07/17 16:17, 4F
→
07/17 16:18, , 5F
07/17 16:18, 5F
→
07/17 16:22, , 6F
07/17 16:22, 6F
→
07/17 16:23, , 7F
07/17 16:23, 7F
推
07/17 16:35, , 8F
07/17 16:35, 8F
→
07/17 21:12, , 9F
07/17 21:12, 9F
→
07/17 21:13, , 10F
07/17 21:13, 10F
→
07/17 21:13, , 11F
07/17 21:13, 11F
→
07/17 23:34, , 12F
07/17 23:34, 12F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章