青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 119  文章 - 290  trackbacks - 0

博客搬家了哦,請移步
叫我abc

常用鏈接

留言簿(12)

隨筆分類

我的博客

搜索

  •  

積分與排名

  • 積分 - 305843
  • 排名 - 84

最新評論

閱讀排行榜

估計標題和摘要都說不清楚,先直接用以前的一個demo說明一下多態吧。
demo中有一個terrain類,代表地形,地形要做的工作就是調整player和enemy的高度,以便讓它們看起來是正確的站在地面上。
負責這個工作的函數是CTerrain::Support(param),現在的問題是param的類型。在設定上,無論是terrain->support(player),或者terrain->support(enemy),Support函數內所做的調用是完全相似的。
因此,第一直覺是,抽象出player和enemy的基類cast,并將被CTerrain::Support調用的函數寫成(純)虛函數。
代碼大概是這樣子:

class ??CCast
{
public :
??
virtual ?? void ??DoSomething1()? = ? 0 ;
??
virtual ?? void ??DoSomething2()? = ? 0 ;
}
;
class ??CPlayer?:? public ?CCast? {} ;
class ??CEnemy?:? public ?CCast? {} ;

class ??CTerrain
{
public :
??
void ??Support(CCast? * cast)
??
{
????cast
-> DoSomething1();
????cast
-> DoSomething2();
??}

}
;

接下來聊聊模板的表現。基于上面的代碼,把CCast類去掉,同時CPlayer和CEnemy類仍舊實現成員函數DoSomething1()和DoSomething2()。CTerrain類修改一下:
class??CTerrain
{
public:
??template
<typename?CAST>
??
void??Support(CAST??*cast)
??
{
????cast
->DoSomething1();
????cast
->DoSomething2();
??}

}
;

情況大概就是這樣子了,需要思考的是:
1,模板是編譯時刻決定選擇,多態是runtime時刻決定選擇。那么,如果事務的環境允許編譯時刻決定選擇,采用模板方案是否更有意義?CEGUI在msg->handler的映射上采用了模板機制。
2,多態有虛擬函數表的開銷,模板的實例化,同樣有類似于函數重載的開銷。不過,多態的開銷包括時間和空間上的,而模板僅僅是空間開銷。
3,如果堅持用模板構建整個project,那么設計上就要抹去runtime時刻決定選擇的行為,這是否會增加程序復雜度,降低可擴展性?
posted on 2006-12-20 15:37 LOGOS 閱讀(1201) 評論(3)  編輯 收藏 引用

FeedBack:
# re: 模版與多態 2006-12-20 20:09 pengkuny
關注  回復  更多評論
  
# re: 模版與多態 2006-12-21 14:48 Francis Arcanum
如果不考慮在運行期間動態的增加邏輯的話,模板和虛函數其實是一樣的
因為main不是模板函數,同樣C++里new T也不能變成虛函數(因為沒有反射),兩種思路歸根結底都必須在一個點上進行switch或mapping。
模板的問題在于,它缺乏一個統一的型別,因此在對模板對象進行持有的時候會有些困難。這個問題最后還是要靠虛函數來解決。  回復  更多評論
  
# re: 模版與多態 2006-12-22 15:43 小山日志
一個是運行時的動態多態;一個是編譯時的靜態多態。
一個是優先使用高內聚的類來封裝數據和算法;一個是將算法和數據分別歸類,再以接口來使用,以此提高算法和容器的利用效率(這個是STL的做法,你提出的例子好像沒有體現出來^_^)。

關于你提出的第三點,我以為那要看你的設計如何了。泛型和多態(動態的)其實目的都是提供高內聚、低耦合的設計方法,只是側重點不一樣啊  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              亚洲第一狼人社区| 国产精品大片| 久久爱www久久做| 浪潮色综合久久天堂| 韩国v欧美v日本v亚洲v| 蜜桃伊人久久| 欧美日韩大片| 香蕉久久夜色精品国产使用方法| 亚洲欧美日韩国产中文| 国产精品一区二区三区免费观看| 欧美α欧美αv大片| 国产欧美一二三区| 亚洲免费在线视频| 亚洲图片你懂的| 欧美日韩另类国产亚洲欧美一级| 麻豆成人综合网| 亚洲国产裸拍裸体视频在线观看乱了 | 亚洲人体一区| 欧美va天堂| 中日韩男男gay无套 | 亚洲一区二区黄色| 欧美揉bbbbb揉bbbbb| 亚洲黄色精品| 亚洲欧洲一区二区在线播放| 久久综合网络一区二区| 欧美国产日韩亚洲一区| 日韩视频在线你懂得| 国产精品亚洲一区| 久久福利资源站| 99视频一区二区| 免播放器亚洲一区| 亚洲深夜影院| 91久久嫩草影院一区二区| 国产精品视频福利| 亚洲黄网站黄| 欧美在线日韩精品| 日韩一区二区电影网| 国产日本欧美在线观看 | 免费黄网站欧美| 亚洲视频在线观看三级| 一区二区三区在线免费观看| 国产精品日韩欧美一区| 欧美日韩1区2区3区| 欧美精品自拍| 欧美大片免费| 乱码第一页成人| 麻豆精品视频| 久久婷婷av| 美女主播视频一区| 欧美精品在线极品| 六月天综合网| 蜜臀va亚洲va欧美va天堂| 欧美亚洲免费在线| 久久精品亚洲一区| 麻豆成人综合网| 欧美日韩的一区二区| 欧美激情久久久久| 欧美福利一区二区三区| 欧美日韩视频在线一区二区 | 久久手机精品视频| 欧美成人高清视频| 欧美久久婷婷综合色| 欧美日韩一区二区三区在线观看免 | 亚洲伦理中文字幕| 亚洲综合色自拍一区| 久久精品视频网| 亚洲黄色小视频| 亚洲影视在线| 欧美剧在线免费观看网站| 欧美日韩一区二区三区在线视频| 国产在线视频不卡二| 亚洲国产99| 久久精品国产清自在天天线| 亚洲电影av| 美女国产精品| 国产综合网站| 久久av资源网站| 亚洲精品一区二区三区福利| 欧美精品黄色| 国产婷婷色一区二区三区四区| 国产亚洲精品久久久久婷婷瑜伽| 夜夜爽www精品| 亚洲高清自拍| 久热这里只精品99re8久| 国产欧美69| 欧美一区二区在线| 中文无字幕一区二区三区| 欧美电影免费网站| 亚洲精品一品区二品区三品区| 欧美在线观看一二区| 亚洲欧美制服中文字幕| 国产伦精品一区二区三| 欧美一区成人| 欧美一区二区三区视频在线观看| 国产免费观看久久黄| 久久久精品免费视频| 久久综合给合久久狠狠色| 亚洲美女电影在线| 在线视频精品一区| 国模精品一区二区三区| 亚洲高清免费| 国产欧美日韩综合| 亚洲人成毛片在线播放女女| 国产精品午夜国产小视频| 久久裸体艺术| 欧美午夜视频在线| 欧美韩日一区二区| 国产精品久久久久久亚洲调教 | 亚洲精品综合精品自拍| 日韩一级视频免费观看在线| 亚洲电影网站| 亚洲精品中文字幕在线观看| 欧美日韩在线播放三区| 久久夜色精品国产欧美乱| 欧美国产欧美亚洲国产日韩mv天天看完整 | 午夜国产精品视频| 在线播放不卡| 久久精品国产精品亚洲综合| 99国产精品99久久久久久粉嫩| 久久激情五月丁香伊人| 欧美在线视频免费| 国产精品视频最多的网站| 亚洲精品一区二区在线观看| 亚洲国产美女精品久久久久∴| 午夜视频久久久| 久久国产精品亚洲77777| 国产欧美精品日韩精品| 亚洲视频精品| 久久久久9999亚洲精品| 精品动漫3d一区二区三区| 老司机精品福利视频| 欧美成人蜜桃| 中文精品在线| 国产精品一二三| 欧美影院视频| 亚洲高清视频一区| 亚洲午夜精品国产| 国产乱码精品一区二区三区不卡 | 欧美xxx成人| 日韩视频永久免费观看| 欧美日韩在线精品| 黄色影院成人| 亚洲精品资源美女情侣酒店| 黄色成人在线| 欧美成人激情视频| 一本色道**综合亚洲精品蜜桃冫 | 欧美成人精品三级在线观看| 亚洲国产高清一区| 日韩亚洲欧美综合| 好吊妞这里只有精品| 欧美激情按摩在线| 亚洲视频1区2区| 亚洲国产一区在线| 久久久久久亚洲精品中文字幕| 一区二区欧美国产| 亚洲激情第一区| 国模套图日韩精品一区二区| 欧美三级视频在线| 欧美黑人一区二区三区| 卡通动漫国产精品| 久久久久久久久一区二区| 亚洲一区二区三区在线视频| 日韩午夜av电影| 在线综合+亚洲+欧美中文字幕| 亚洲国产国产亚洲一二三| 亚洲欧美资源在线| 亚洲视频久久| 麻豆成人小视频| 欧美在线视频全部完| 午夜在线观看免费一区| 1000部国产精品成人观看| 国产精品手机在线| 国产乱码精品一区二区三| 久久成人免费日本黄色| 亚洲欧美日本国产有色| 亚洲欧美激情视频| 亚洲欧洲美洲综合色网| 91久久中文| 亚洲一区二区在线免费观看视频| 亚洲一级在线| 久久日韩粉嫩一区二区三区| 欧美黄色精品| 一区二区三区 在线观看视| 一区二区三区久久| 久久久www| 欧美日韩精品综合| 国产一区二区黄色| 中日韩视频在线观看| 久久爱www.| 一区二区三区国产在线观看| 久久久久久久一区二区三区| 欧美视频官网| 亚洲国产精品久久人人爱蜜臀 | 亚洲一区二区三区乱码aⅴ| 99热这里只有成人精品国产| 香蕉久久夜色精品| 国产精品久久网站| 亚洲深夜福利视频| 99国产精品99久久久久久| 久久久高清一区二区三区|