• <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>
            隨筆 - 6  文章 - 8  trackbacks - 0
            <2007年3月>
            25262728123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(1)

            隨筆檔案

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            C++中,經(jīng)常用到對(duì)象(Object)、類(Class)和實(shí)例(Instance)等概念,一直對(duì)這幾個(gè)概念有些混淆,今天算是整理一下自己的思路,談?wù)勛约簩?duì)這幾個(gè)概念的看法吧;希望不當(dāng)之處大家能夠指出,也歡迎大家看看自己的看法。

            從其定義來(lái)看,對(duì)象是指一個(gè)能完成特定操作,具有特定屬性的實(shí)體(Component);類是具有相同屬性對(duì)象的集合(Group of Objects)。實(shí)例則往往被理解為一個(gè)對(duì)象的具體化。

            對(duì)象更多的是一個(gè)概念,在象SmallTalk這類純粹的OO語(yǔ)言中,所有東西都是對(duì)象(MetaClass, Class, Instances);而類在不過(guò)是一個(gè)特殊的、能作為模板創(chuàng)建實(shí)例的對(duì)象。(一直想弄個(gè)SmallTalk來(lái)玩玩,但終究沒有時(shí)間和精力去學(xué)習(xí)。)

            C++中,“對(duì)象”概念往往被模糊化,它不是一個(gè)能包括一切的概念,而在某些環(huán)境下成為能和類與實(shí)例相互替換的概念。

            原因之一,或許是在C++對(duì)類的定義。C++把類定義為一個(gè)抽象數(shù)據(jù)類型(ADT)。而ADT只是一個(gè)實(shí)現(xiàn)上的概念,它在運(yùn)行時(shí)并不存在一個(gè)對(duì)象所應(yīng)該具有的特征(屬性和行為)。雖然C++中引入了運(yùn)行時(shí)類型信息(RTTI,參看type_info類),但仍然很難把類當(dāng)成一個(gè)對(duì)象。從這個(gè)角度來(lái)說(shuō),在實(shí)現(xiàn)時(shí)類可以看作是對(duì)象概念的代名詞。

            原因之二,個(gè)人覺得應(yīng)該是和使用這些概念的上下文有關(guān)。在使用C++時(shí)(包括設(shè)計(jì)模式),往往需要考慮兩個(gè)層次的抽象:
            1. 編碼(實(shí)現(xiàn))時(shí)的抽象
            2. 運(yùn)行時(shí)的抽象

            在實(shí)現(xiàn)時(shí),C++中,無(wú)疑類的概念和對(duì)象的概念是一致的,而實(shí)例則可以理解為一個(gè)類的實(shí)例化或一個(gè)對(duì)象的具體化;對(duì)應(yīng)與Design Pattern,那些結(jié)構(gòu)化的模式(Structural Patterns)更適合與這一層次的抽象。

            在運(yùn)行時(shí),個(gè)人覺得對(duì)象更多的是和實(shí)例等同的。我們說(shuō)某個(gè)對(duì)象和另外一個(gè)對(duì)象交互更多的是在表達(dá)某個(gè)類的一個(gè)實(shí)例和另一個(gè)類的一個(gè)實(shí)例進(jìn)行交互,這個(gè)時(shí)候,對(duì)象不再是一個(gè)概念,而是被具體化了。而設(shè)計(jì)模式中的行為模式(Behavioral Patterns)則更適合與這個(gè)層次的抽象。

            以上是我對(duì)這幾個(gè)基本概念的理解,請(qǐng)大家批評(píng)指教!
            //bow

            posted on 2007-03-22 10:34 Neal 閱讀(6101) 評(píng)論(5)  編輯 收藏 引用

            FeedBack:
            # re: 我看C++中的Object, Class & Instance 2007-03-22 14:44 Corner Zhang
            對(duì)象(Object)-- 平時(shí)口頭上經(jīng)常提到“基于對(duì)象的編程”,“面向?qū)ο蟮木幊獭保彩且[藏部分信息的那個(gè)概念,就是通常意義上的對(duì)象。

            類(Class)-- 在C++中,這是指一些類型,它們有別于float, int, long...,從compiler的角度看,它是一族對(duì)象的母板,并且存在編譯期

            實(shí)例(Instance)-- 是個(gè)運(yùn)行時(shí)的概念,擁有自身狀態(tài),具有生存期/擁有權(quán)性質(zhì)的,寄身于memory的二進(jìn)制表示。就因?yàn)檫@個(gè)原因,成為hacker整日追蹤的目標(biāo)。  回復(fù)  更多評(píng)論
              
            # re: 我看C++中的Object, Class & Instance 2007-03-23 08:31 LOGOLS OFF
            感覺你說(shuō)的有點(diǎn)太school了
            類就是類型,對(duì)象就是實(shí)例,實(shí)例就是對(duì)象。這就是我的理解了  回復(fù)  更多評(píng)論
              
            # re: 我看C++中的Object, Class & Instance 2007-03-23 16:45 Neal
            呵呵,謝謝大家
            就是談?wù)勛约旱母惺芎屠斫饴铩!!?隙ㄓ胁粚?duì)的地方,只是希望大家能和偶一起探討探討~ 要不天天coding有什么意思呢

            C++和其它OO語(yǔ)言肯定有相同的地方,但更重要的是它不同的地方三,要不怎么會(huì)有這么多fans;D
              回復(fù)  更多評(píng)論
              
            # re: 我看C++中的Object, Class & Instance 2007-03-28 20:05 Corner Zhang
            @LOGOLS OFF
            赫赫,當(dāng)初我寫下這回復(fù),就覺得少不了具務(wù)實(shí)精神的回復(fù)!  回復(fù)  更多評(píng)論
              
            # re: 我看C++中的Object, Class & Instance 2007-03-30 17:08 塌塌方
            類就是一組數(shù)據(jù)及其能對(duì)它進(jìn)行的操作的集合  回復(fù)  更多評(píng)論
              

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久精品男人影院| 久久99精品久久久久久动态图 | 久久91综合国产91久久精品| 国产精品欧美久久久天天影视| 欧美亚洲国产精品久久高清| 99久久精品国产一区二区 | 思思久久99热只有频精品66| 久久久久久毛片免费播放| 精品久久久久中文字幕一区| 久久久国产99久久国产一| 亚洲国产精品无码久久久蜜芽 | 亚洲中文久久精品无码ww16| 国产成人无码久久久精品一| 亚洲国产精品成人久久蜜臀| 国产精品久久久久9999| 99久久做夜夜爱天天做精品| 国产亚洲美女精品久久久久狼| 欧美伊人久久大香线蕉综合| 久久国产免费直播| 麻豆精品久久久一区二区| 久久99精品国产自在现线小黄鸭 | 91精品国产综合久久香蕉 | 中文成人无码精品久久久不卡 | 久久精品国产99国产精偷| 久久久噜噜噜www成人网| 99精品国产免费久久久久久下载| 久久精品国产一区| 亚洲AV无码久久| 囯产精品久久久久久久久蜜桃 | 久久中文骚妇内射| 性色欲网站人妻丰满中文久久不卡| 91精品国产91久久| 婷婷综合久久狠狠色99h| 好久久免费视频高清| 久久精品国产亚洲AV嫖农村妇女| 久久无码AV一区二区三区| 午夜精品久久久久久| 亚洲国产成人久久精品99 | 99久久精品影院老鸭窝| 久久Av无码精品人妻系列| 久久99热只有频精品8|