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

Dict.CN 在線詞典, 英語學(xué)習(xí), 在線翻譯

學(xué)海苦作舟,書山勤為徑

留下點回憶

常用鏈接

統(tǒng)計

積分與排名

Denoise

English study

Web技術(shù)

數(shù)據(jù)壓縮

一些連接

最新評論

為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小?

本隨筆緊接上個隨筆:空結(jié)構(gòu)體(類對于C++)的大小
http://m.shnenglu.com/windcsn/archive/2011/04/13/144162.html

這里試圖討論為什么C++的結(jié)構(gòu)體或類即使沒有成員也需要一個字節(jié)的大小?
首先需要一個字節(jié)的作用在上個隨筆中已經(jīng)說明,是為了在生成實例的時候確定區(qū)別;但實際上在C里面是不支持空成員的結(jié)構(gòu)體,直接報編譯錯誤。
因此這是C++特有的特性,可能有如下的原因:
1.C++里面必須支持沒有成員的類,比如純虛類;這些類只有方法,沒有數(shù)據(jù)成員(雖然會有虛表);但這些類不會被實例化。
2.為了達(dá)到統(tǒng)一,非純虛類的C++結(jié)構(gòu)體和類也會被C++支持,但他們需要實例化,所以需要提供一個字節(jié)來可以給他們分配內(nèi)存。

而C里面是不支持沒有成員的結(jié)構(gòu)體(VC里面是編譯不過的),其實完全沒有必要支持這種無意義的定義,從而更簡單。

歡迎討論。

posted on 2011-04-14 11:34 笨笨 閱讀(3380) 評論(12)  編輯 收藏 引用 所屬分類: C++

評論

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 12:19 陳梓瀚(vczh)

帶有虛函數(shù)的類會有至少一個隱藏的成員,所以這個不是問題。但是你new一個真的什么都沒有的類得獲得一個有效指針,因此長度不能是0。反正正常人不會真的去分配真的沒有成員的類的,所以1個字節(jié)是可以接受的。

C++里面聲明一個空struct都是為了獲得一個強類型的指針外殼。譬如說

typedef struct __i_dont_know_what_its_name__
{
//有時候這里會有int __unused;為了讓C能編譯通過。
}* HWND;  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 12:47 windyhoo

我在G++下編譯,里面一個字節(jié)的內(nèi)容是0  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小?[未登錄] 2011-04-14 12:50 cc

那個字節(jié)貌似是給虛表制針留的。  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 13:01 EvilGhost

主要還是對象這個概念的問題。如果一個空對象不使用實際的存儲空間來表示那用什么方式表示好呢?雖然是空對象,但畢竟還是個對象,總是要作為一個實體和其他實體進行區(qū)別的。如果要區(qū)別,那么必然需要某種標(biāo)識,這種標(biāo)識至少也是一個實體,它需要占用存儲空間。其實也就沒有辦法避免存儲空間了,那給其分配1個字節(jié)也是一種合乎情理的解決方案了。  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 13:15 笨笨

@windyhoo
回頭試試  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 13:17 笨笨

@EvilGhost
如果僅僅只是對象的區(qū)別,是不是可以考慮不允許定義這種沒有意義的類更為實際,就象C那樣  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 17:50 dawnless

沒有意義的類?事實上STL中的函數(shù)對象就是通過這種方式實現(xiàn)的@笨笨
  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-14 21:14 EvilGhost

@笨笨
空對象是很有用的,如果它是模板類對象,可以攜帶類信息被存儲。  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-15 13:04 oah


http://www.spongeliu.com/clanguage/why-not-null/

著個文章有解釋 挺好的  回復(fù)  更多評論   

# re: 為什么C++的結(jié)構(gòu)體或類沒有成員是1個字節(jié)大小? 2011-04-15 21:57 笨笨

@oah
那個文章只解釋為什么為1,但并沒有解釋為什么不允許空類?  回復(fù)  更多評論   

# And I tohught I was the sensible one. Thanks for setting me straight. 2011-05-26 17:41 Kristabelle

And I tohught I was the sensible one. Thanks for setting me straight.  回復(fù)  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            在线观看亚洲视频| 欧美一区二区三区视频在线观看 | 欧美日韩综合精品| 欧美国产一区二区| 午夜精品福利电影| 在线亚洲一区观看| 精品91在线| 国产精品99一区二区| 久色婷婷小香蕉久久| 一区二区三区免费在线观看| 亚洲国产欧美久久| 久久久久这里只有精品| 99热精品在线| 99成人在线| 国语自产精品视频在线看| 国产亚洲观看| 激情自拍一区| 国产亚洲欧美一区二区三区| 国产精品欧美激情| 国产亚洲欧美一区二区| 国产亚洲精品aa| 国产专区精品视频| 狠狠色丁香婷综合久久| 亚洲高清视频一区| 亚洲一区综合| 久久九九国产| 男人的天堂亚洲在线| 久久国产精品久久国产精品 | 欧美丝袜一区二区| 欧美日韩精品免费观看视频完整 | 国产欧美日韩一区二区三区在线观看| 欧美日韩免费网站| 在线观看视频亚洲| 欧美在线视频日韩| 久久久青草婷婷精品综合日韩| 久久久久久**毛片大全| 最新国产の精品合集bt伙计| 久久精品国产亚洲5555| 欧美日韩亚洲天堂| 亚洲尤物视频在线| 国产精品草莓在线免费观看| 国产嫩草影院久久久久| 日韩视频在线播放| aⅴ色国产欧美| 久久久国产精品亚洲一区| 欧美.日韩.国产.一区.二区| 亚洲一级特黄| 国产精品一区二区三区免费观看| 在线精品福利| 久久久www成人免费毛片麻豆| 亚洲手机视频| 国产免费亚洲高清| 欧美高清在线视频观看不卡| 免费成人在线观看视频| 一区在线视频| 久久夜色精品国产欧美乱| 亚洲精品极品| 欧美日韩综合视频| 日韩视频在线一区二区三区| 久久亚洲综合色| 亚洲美女淫视频| 欧美视频不卡| 久久久一二三| 欧美一区二区在线免费观看| 在线观看精品一区| 亚洲精品小视频| 欧美日韩亚洲不卡| 久久久久久久精| 欧美国产三区| 午夜精品久久久久| 久久精品日韩| 在线一区二区三区四区| 欧美自拍丝袜亚洲| 国语自产精品视频在线看| 欧美制服丝袜第一页| 亚洲视频一区二区| 亚洲国产日韩欧美在线动漫| 亚洲国产成人久久综合一区| 国产乱码精品一区二区三区av| 久久婷婷久久| 欧美日韩一区二区欧美激情| 亚洲欧美日本在线| 久久在精品线影院精品国产| 亚洲自拍另类| 久久精品人人做人人爽电影蜜月| 久久精品午夜| 久久久久久免费| 欧美电影免费观看网站| 久久都是精品| 国产精品乱人伦一区二区| 暖暖成人免费视频| 欧美日韩伊人| 免费亚洲视频| 亚洲国产欧美不卡在线观看| 亚洲午夜久久久| 亚洲精品久久久一区二区三区| 亚洲国产精品成人一区二区 | 激情综合网址| 麻豆国产va免费精品高清在线| 夜夜爽av福利精品导航| 久久久久久夜| 蜜臀av一级做a爰片久久| 欧美日产在线观看| 99亚洲一区二区| 亚洲色图自拍| 欧美日韩人人澡狠狠躁视频| 亚洲国产精品久久久久秋霞不卡| 韩国av一区二区三区在线观看| 欧美在线观看视频| 欧美一区二区三区电影在线观看| 国产精品久久久久久亚洲毛片| 久久综合国产精品| 亚洲国产精品尤物yw在线观看| 久久午夜精品一区二区| 久久国产福利| 亚洲日本成人女熟在线观看| 久久免费高清| 亚洲午夜在线视频| 老司机午夜精品视频| 国产日本精品| 久久亚洲综合色一区二区三区| 日韩视频免费观看高清在线视频| 亚洲精美视频| 国产精品蜜臀在线观看| 久久先锋影音| 一区二区三区视频在线观看| 午夜亚洲视频| 国产日韩在线一区二区三区| 欧美成人国产| 一本久久综合亚洲鲁鲁五月天| 欧美成人免费网| 亚洲国产精品久久久久婷婷老年| 亚洲欧洲综合另类| 欧美视频在线观看免费网址| 久久美女艺术照精彩视频福利播放| 久久综合999| 99精品欧美一区二区三区| 欧美午夜影院| 欧美日韩第一页| 免费在线观看精品| 亚洲欧美一区二区三区在线 | 亚洲永久免费av| 欧美国产免费| 久久麻豆一区二区| 一本不卡影院| 中日韩高清电影网| 亚洲激情在线播放| 原创国产精品91| 国语自产在线不卡| 永久免费毛片在线播放不卡| 久久久久欧美精品| 老牛嫩草一区二区三区日本| 久久久久国产一区二区| 你懂的成人av| 欧美大片91| 欧美顶级艳妇交换群宴| 欧美日韩国产另类不卡| 欧美色大人视频| 国产欧美日本在线| 91久久久在线| 亚洲国产天堂久久综合网| 亚洲国产精品成人一区二区| 亚洲精品精选| 亚洲免费视频网站| 久久精品视频在线观看| 亚洲精品国产精品乱码不99| 宅男66日本亚洲欧美视频| 亚洲一区二区免费在线| 中日韩高清电影网| 久久精品亚洲热| 欧美涩涩视频| 国自产拍偷拍福利精品免费一| 激情久久综艺| 亚洲欧洲在线免费| 欧美一级欧美一级在线播放| 六月天综合网| 欧美一区二区三区久久精品茉莉花 | 一本色道久久综合精品竹菊| 欧美大片在线观看一区| 久久久久久尹人网香蕉| 欧美精品免费播放| 国产主播一区| 亚洲看片一区| 久久久久久自在自线| 99xxxx成人网| 久久久久久久久久看片| 另类欧美日韩国产在线| 欧美美女日韩| 国产午夜精品久久| 亚洲一区久久久| 日韩视频一区二区| 欧美成人激情在线| 国产一区二区在线观看免费| 亚洲欧洲日本在线| 亚洲欧美日韩中文视频| 裸体一区二区| 久久久久九九九| 国产欧美日韩精品丝袜高跟鞋| 亚洲视频在线二区| 亚洲男人的天堂在线观看|