全部寫C++的文章,若是沒有源代碼都是在耍流氓。閒話不說, May the source be with you!函數
這是一個教科書般經典的例子。介紹C++的繼承和多態。 這裏惟一須要重點強調的是:對函數LetAnimalTalk和vector va 來講,咱們能夠想象他們是客戶。[face=黑體]經過繼承把變化封裝到基類的後面,這樣使用基類接口的客戶就不須要改動![/face]對客戶來講,不管基類後面怎麼變化,你都影響不到我。例如,若是如今有一個經理狗加入了項目團隊,你的LetAnimalTalk函數是不須要任何改變的。blog
So far so good! 如今看看引入模版後,發生了什麼?繼承
基本的應用場景是這樣的。對於animal, 你能夠用字符串來表示他的ID, 若是你想developer是不該該享有字符串名字的,那麼你也能夠用整型數來表示他的ID。上面整個的程序,若是你把main中換成下面的樣子,除了貓會有點意見,其它一切都沒有問題!接口