亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么要傳入指針呢?

在flymatch函數中為什么要傳入指針呢?

正在回答

2 回答

首先flymatch函數不僅可以傳入指針,還可以傳入實例化對象。

1、課程中為什么要傳入flyable指針呢,是基于基類的引用和指針可以引用子類的對象這一原則,也就是說flyable *p? 這個指針既可以引用bird也可以引用plan,這樣做的好處后面會說到。

2、那為什么不用flyable p 呢,是因為flyable是純虛函數,flyable p就是實例化一個flyable的對象p。顯而易見,純虛函數是不能被實例化的,所以flyable p 是非法的。

3、那可以傳入什么樣的實例化對象呢,bird和plan的實例化對象都可以。但是一旦這樣做了就會有一個限制,如果函數中聲明的是一個bird的對象,那么這個函數就不能再調用plan的對象了,因為bird和plan是兩個完全不同的類,所以函數只能接受bird的對象而不能接受plan的對象,就像一個人如果是男人,那么他肯定不可能是女人。如果想處理plan的對象,那么只能再創建另外一個函數來處理了。

4、事實都不是絕對的,人妖的出現證明了一個人即可以是男人也可以是女人,而flayable *p的出現呢,就是為了讓函數即可以調用bird的對象又可以調用plan的對象以及其它flyable的子類對象,這種編程靈活性是所有編程人員所崇尚的。

講解完畢,如果幫到你請給個好評吧!媳婦非得要那個慕課君抱枕,拼命賺積分ing。。。。。。

9 回復 有任何疑惑可以回復我~
#1

paopaonb 提問者

非常感謝!
2016-01-10 回復 有任何疑惑可以回復我~
#2

vortesnail

你的回答很好,謝謝,也祝你早日換到慕課君抱枕!~
2016-09-24 回復 有任何疑惑可以回復我~

請問您說的是哪一課?傳入指針在某種情況下很方便

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之多態篇
  • 參與學習       66224    人
  • 解答問題       334    個

本教程將帶領大家體會面向對象三大特性中的多態特性

進入課程

為什么要傳入指針呢?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號