• <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>

            泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎?

             

            最近看了《C++設(shè)計(jì)新思維》一書(shū)的前幾章,總的感覺(jué)是不怎么爽。比起以前看《泛型編程 and STL》,boost庫(kù)起來(lái),感覺(jué)該書(shū)描述的東西太過(guò)于注重模板的技巧,C++是一個(gè)編譯型的語(yǔ)言,一些動(dòng)態(tài)語(yǔ)言很容易實(shí)現(xiàn)的功能C++實(shí)現(xiàn)起來(lái)就很難,我們完全沒(méi)有必要硬是用大量的模板來(lái)強(qiáng)迫C++在編譯期實(shí)現(xiàn)這些動(dòng)態(tài)特性。語(yǔ)言只要是好用就行,而現(xiàn)在C++代碼里幾乎全是模板,并且越來(lái)越復(fù)雜,不知道以后誰(shuí)還愿意這樣寫(xiě)C++?難道泛型編程就是C++的發(fā)展方向嗎?

            posted on 2007-05-04 14:03 bo 閱讀(3178) 評(píng)論(5)  編輯 收藏 引用 所屬分類(lèi): Language

            評(píng)論

            # re: 泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎? 2007-05-04 16:16 FlyingBear

            我覺(jué)得《C++設(shè)計(jì)新思維》這本書(shū)更像是一篇學(xué)術(shù)論文,它所描述的東西理論價(jià)值更大一些吧,用的時(shí)候就自己看著辦好了,像smartwin里的policy,就算是用得比較成功的例子吧  回復(fù)  更多評(píng)論   

            # re: 泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎? 2007-05-04 16:31 空明流轉(zhuǎn)

            首先,C++的模板更多的是給庫(kù)設(shè)計(jì)者使用的.現(xiàn)有的模板使用困難的情況主要是由編譯器無(wú)法正確良好的定位錯(cuò)誤.對(duì)于一個(gè)庫(kù)的設(shè)計(jì)者,必要的編譯器靈活性是必須的,而且現(xiàn)有模板仍然滿(mǎn)足不了靈活性的要求.所以0x里面還是要推出更加靈活更加泛型化的Concept;
            然后,C++的模板被用到現(xiàn)在這個(gè)樣子當(dāng)時(shí)也沒(méi)有人預(yù)計(jì)到.最早B.Stroustrup也僅僅是認(rèn)為模板就是附帶了編譯器驗(yàn)證類(lèi)型的宏而已.metaprogramming完全可以看作是一群無(wú)聊的人在無(wú)聊的時(shí)候想出來(lái)取樂(lè)的智力競(jìng)賽題,只是Alexandrescu只是把這個(gè)游戲玩到登峰造極.實(shí)質(zhì)上除了Typelist和自動(dòng)繼承層級(jí)以外,其它的庫(kù),特別是基于策略的思路構(gòu)造的庫(kù),都讓程序庫(kù)的設(shè)計(jì)者大開(kāi)了眼界,同時(shí)從他的實(shí)際使用情況來(lái)看,對(duì)很多問(wèn)題而言,這種設(shè)計(jì)的適應(yīng)性很好,結(jié)構(gòu)也并不復(fù)雜.再加上未來(lái)的0x的語(yǔ)法糖,也會(huì)讓Loki一類(lèi)的庫(kù)使用起來(lái)更加方便.至于他的書(shū)的頭幾章節(jié),這種底層的東西總是要有些技巧性的,BOOST的MPL還不是一樣寫(xiě)的神乎其神的.  回復(fù)  更多評(píng)論   

            # re: 泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎? 2007-05-04 19:07 missdeer

            Bjarne看了那書(shū)也說(shuō)人家是“too clever”,呵呵
            就像前面的老兄說(shuō)的,模板技術(shù)、泛型編程更多的情況是適用于庫(kù)作者
            現(xiàn)在大量的C++庫(kù),包括Boost、Loki以及很多Language Binding庫(kù),都用到了書(shū)中提到的Policy技術(shù),確實(shí)解決了以前存在的一些問(wèn)題  回復(fù)  更多評(píng)論   

            # re: 泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎? 2007-05-04 19:32 LOGOS

            個(gè)人比較認(rèn)同“基于策略的思路構(gòu)造的庫(kù)”,這也是我期望模板所能帶來(lái)的優(yōu)越性。  回復(fù)  更多評(píng)論   

            # re: 泛型程序設(shè)計(jì)是C++的發(fā)展方向或者是出路嗎? 2007-05-28 10:53 longshanks

            模板帶來(lái)的是強(qiáng)類(lèi)型的多態(tài)(利用靜多態(tài))。它的好處就是利用強(qiáng)類(lèi)型在編譯時(shí)攔截大量的錯(cuò)誤。同時(shí),類(lèi)的出現(xiàn),使得操作成為類(lèi)型的一部分。強(qiáng)類(lèi)型化后,不僅僅數(shù)據(jù)結(jié)構(gòu)的邏輯性得到檢驗(yàn),連施加在這些數(shù)據(jù)上的操作也得到約束。因此,合理地運(yùn)用模板和隨之帶來(lái)的強(qiáng)類(lèi)型多態(tài),可以使得代碼更高效,更簡(jiǎn)潔,也更安全。
            由于業(yè)界的大多數(shù)程序員還在努力消化OOP帶來(lái)的技術(shù)革命,還無(wú)法理解gp帶來(lái)的優(yōu)勢(shì)。不同于OOP,業(yè)界也還沒(méi)有出現(xiàn)GP方面完整的理論,所以對(duì)模板及其帶來(lái)的好處還未能充分理解。  回復(fù)  更多評(píng)論   

            <2007年5月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(4)

            隨筆分類(lèi)(23)

            隨筆檔案(23)

            URL

            最新隨筆

            搜索

            積分與排名

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久亚洲AV无码永不| 久久人人爽人人爽人人片AV麻烦| 久久精品成人| 久久久噜噜噜久久中文字幕色伊伊| 久久99精品国产99久久6| 国产成人精品久久亚洲高清不卡 | 97精品伊人久久久大香线蕉| 狠狠综合久久AV一区二区三区 | 亚洲伊人久久成综合人影院| 伊人色综合久久天天| 一级做a爰片久久毛片看看| 国产高清国内精品福利99久久| 久久精品成人欧美大片| 中文字幕乱码人妻无码久久 | 精品国产乱码久久久久久浪潮| 97久久综合精品久久久综合| 婷婷五月深深久久精品| 久久久精品国产| 手机看片久久高清国产日韩 | 亚洲国产精品无码久久一线| 国产精品久久一区二区三区| 亚洲伊人久久大香线蕉综合图片| 99久久99久久精品国产片果冻| 亚洲国产精品无码久久98| 久久天天躁狠狠躁夜夜av浪潮| 九九99精品久久久久久| 亚洲国产精品久久电影欧美| 欧美成a人片免费看久久| 国产69精品久久久久99| 免费精品99久久国产综合精品| 久久久久亚洲Av无码专| 国产精品久久久亚洲| 久久久久亚洲AV无码专区体验| 囯产极品美女高潮无套久久久| 欧美日韩精品久久久久| 久久免费看黄a级毛片| 日产精品久久久久久久| 精品国产青草久久久久福利| 久久亚洲sm情趣捆绑调教| 国内精品人妻无码久久久影院导航 | 久久久这里有精品中文字幕|