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

Dict.CN 在線詞典, 英語學習, 在線翻譯

學海苦作舟,書山勤為徑

留下點回憶

常用鏈接

統(tǒng)計

積分與排名

Denoise

English study

Web技術

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

一些連接

最新評論

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

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

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

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

歡迎討論。

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

評論

# re: 為什么C++的結構體或類沒有成員是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;  回復  更多評論   

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

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

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

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

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

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

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

@windyhoo
回頭試試  回復  更多評論   

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

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

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

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

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

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

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


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

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

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

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

# 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.  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲精品1区2区| 亚洲国产精品v| 午夜视黄欧洲亚洲| 久久久午夜视频| 欧美在线免费观看视频| 激情久久影院| 久久免费一区| 欧美 亚欧 日韩视频在线| 日韩午夜高潮| 亚洲一区二区在线播放| 国产婷婷成人久久av免费高清| 久久免费国产精品| 欧美阿v一级看视频| 一区二区三区日韩精品视频| 亚洲综合欧美| 精品88久久久久88久久久| 亚洲国产日韩欧美在线99| 欧美新色视频| 久久一区二区三区av| 欧美高潮视频| 欧美一级视频| 欧美成人在线免费视频| 亚洲一区二区久久| 久久久久久一区二区| 一区二区三区精品视频| 亚洲欧美日韩国产成人精品影院| 狠色狠色综合久久| 日韩午夜激情av| 黄色日韩精品| 亚洲美女av电影| 国内外成人在线视频| 亚洲精品乱码| 国内一区二区三区在线视频| 亚洲精品一区二区网址 | 性感少妇一区| 欧美v日韩v国产v| 久久国产视频网| 欧美日韩免费一区二区三区| 开心色5月久久精品| 欧美色精品天天在线观看视频| 久久久综合免费视频| 国产精品美女久久| 亚洲国产成人精品视频| 国内精品久久久久影院色| 夜久久久久久| 亚洲乱码视频| 久久综合久久88| 久久精品国产一区二区三| 欧美视频一区二区三区在线观看| 欧美sm重口味系列视频在线观看| 国产日韩精品在线观看| 一区二区三区视频免费在线观看 | 欧美aⅴ一区二区三区视频| 欧美综合二区| 国产精品大片免费观看| 亚洲高清在线精品| 在线观看亚洲a| 午夜视频久久久| 午夜精品视频一区| 欧美午夜在线观看| 日韩五码在线| 亚洲一区视频| 国产精品video| 99国产精品国产精品毛片| 亚洲精品国产系列| 欧美1区2区视频| 亚洲国产精品嫩草影院| 亚洲国产另类久久久精品极度| 久久精品国产91精品亚洲| 久久久久久久91| 国产精品高潮呻吟视频| 亚洲一区二区三区四区中文| 午夜亚洲精品| 国产伊人精品| 另类图片综合电影| 亚洲欧洲一区二区三区| 亚洲视频免费在线观看| 欧美先锋影音| 欧美一二区视频| 免费成人小视频| 亚洲精品一区在线观看| 欧美韩日一区二区三区| 日韩天堂av| 欧美在线免费观看视频| 精品不卡一区二区三区| 欧美国产大片| 亚洲视频在线观看| 久久另类ts人妖一区二区| 1024亚洲| 欧美午夜精彩| 欧美在线影院| 亚洲欧洲精品天堂一级| 午夜精品福利视频| 精久久久久久| 国产精品99一区| 久久国产夜色精品鲁鲁99| 免费看亚洲片| 亚洲欧美日韩中文在线制服| 国内精品嫩模av私拍在线观看| 巨乳诱惑日韩免费av| 在线中文字幕不卡| 欧美成人午夜| 亚洲欧美在线一区| 亚洲国产精品一区在线观看不卡| 欧美日韩一级黄| 欧美在线视频一区二区三区| 亚洲免费电影在线| 久久亚洲精品网站| 亚洲欧美欧美一区二区三区| 影院欧美亚洲| 国产精品伊人日日| 欧美精品国产| 久久久久久伊人| 亚洲无吗在线| 最新日韩中文字幕| 另类酷文…触手系列精品集v1小说| 亚洲天堂成人在线观看| 亚洲欧洲精品成人久久奇米网| 国产精品视频xxx| 欧美日本国产精品| 另类酷文…触手系列精品集v1小说| 亚洲影院在线| 一本色道久久综合| 亚洲国产精品久久久久久女王| 久久久亚洲综合| 欧美影院一区| 亚洲欧美日韩国产一区| 99精品国产在热久久下载| 在线播放一区| 国产亚洲欧美激情| 国产精品视频免费在线观看| 欧美日韩亚洲一区二区三区| 欧美成人情趣视频| 美女国产一区| 免费亚洲电影| 蜜桃av久久久亚洲精品| 久久亚洲欧美国产精品乐播| 久久成人18免费观看| 欧美一区二区在线看| 欧美亚洲在线视频| 午夜免费久久久久| 欧美在线观看视频一区二区| 一区二区精品在线| 一区二区日韩| 一区二区欧美视频| 亚洲一区二区三区视频播放| 亚洲丝袜av一区| 亚洲欧美在线x视频| 欧美在线亚洲在线| 免费观看久久久4p| 久久久久久久一区| 午夜精品短视频| 亚洲黄色高清| 亚洲欧洲日产国码二区| 亚洲精品一区二区三| 日韩一级黄色av| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 国产精品盗摄久久久| 国产精品视频观看| 国产农村妇女毛片精品久久莱园子| 国产欧美日韩综合精品二区| 韩日欧美一区二区| 亚洲欧洲视频在线| 亚洲一区激情| 久久久久欧美| 欧美大片网址| 亚洲美女视频网| 欧美亚洲一区二区在线| 久久影视精品| 欧美日韩综合在线| 国内揄拍国内精品久久| 亚洲精品少妇网址| 亚洲欧美日韩成人| 久久亚洲精选| 99re66热这里只有精品3直播| 亚洲欧美精品suv| 麻豆成人综合网| 国产精品久久久久77777| 激情欧美丁香| 亚洲小说春色综合另类电影| 久久久久国产精品午夜一区| 亚洲国产一成人久久精品| 亚洲自拍16p| 免费看成人av| 国产一区二区三区在线观看免费视频 | 最新国产成人在线观看| 午夜精品视频| 亚洲国产国产亚洲一二三| 亚洲一区二区在线免费观看| 欧美ab在线视频| 国产午夜久久久久| 一本色道久久综合亚洲精品不卡 | 亚洲国产人成综合网站| 亚洲一区视频在线观看视频| 久久永久免费| 国产亚洲一区在线| 亚洲天堂网站在线观看视频| 欧美电影在线观看完整版| 午夜精品亚洲| 国产精品黄视频|