• <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>
            Dict.CN 在線詞典, 英語學習, 在線翻譯

            學海苦作舟,書山勤為徑

            留下點回憶

            常用鏈接

            統(tǒng)計

            積分與排名

            Denoise

            English study

            Web技術(shù)

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

            一些連接

            最新評論

            編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++)

            C++標準中這么說:
            對于類X,如果沒有任何用戶定義的構(gòu)造函數(shù),那么就會有一個默認構(gòu)造函數(shù)被暗自聲明出來;這種函數(shù)一般沒有什么用。。。

            不過實際上不是什么時候編譯器都生成默認構(gòu)造函數(shù),但下面集中情況卻一定會為我們生成默認構(gòu)造函數(shù):
            1.類A中包含一個成員是另外一個類B,如果類B定義了默認構(gòu)造函數(shù)。這個時候如果類A沒有定義默認構(gòu)造函數(shù),編譯器會暗自生成一個默認構(gòu)造函數(shù)來調(diào)用調(diào)用類B的構(gòu)造函數(shù)來初始化它。
            2.類A從類B繼承,類B帶有默認構(gòu)造函數(shù),那么這個時候編譯器會為類A合并默認構(gòu)造函數(shù)來調(diào)用類B的默認構(gòu)造函數(shù)。
            3.類A中包含虛函數(shù);如果類A沒有定義默認構(gòu)造函數(shù),編譯器會為類A合并默認構(gòu)造函數(shù),其目的是初始化虛函數(shù)表,這是因為C++的虛函數(shù)表是在運行的時候生成的,而這就是在每個類被初始化的時候。
            4.如果類A是虛繼承其基類B,編譯器會為類A及其子類合并默認構(gòu)造函數(shù)來初始化而定義偏移地址。

            這里還加一條:
            對于后面三點,如果類C中包含這樣的類A,同1一樣,編譯器會合并默認構(gòu)造函數(shù)。

            posted on 2011-04-07 22:32 笨笨 閱讀(2107) 評論(5)  編輯 收藏 引用 所屬分類: C++

            評論

            # re: 編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++) 2011-04-08 10:10 Kevin Lynx

            基本上,就是“當需要的時候”,就會被生成。  回復  更多評論   

            # re: 編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++) 2011-04-08 10:33 笨笨

            @Kevin Lynx
            總結(jié)精辟。。。
              回復  更多評論   

            # re: 編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++) 2011-04-08 10:46 Kevin Lynx

            @笨笨
            不是我總結(jié)的,貌似是<Inside C++ object model>里有這么一句話。"when it's necessary"  回復  更多評論   

            # re: 編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++) 2011-04-08 14:33 JFFO

            你要是自己寫編譯器,想它什么時候產(chǎn)生都行  回復  更多評論   

            # re: 編譯器上面時候為我們生成默認構(gòu)造函數(shù)?(C++) 2011-04-08 21:47 cqm

            不錯。推薦一網(wǎng)站:http://www.zongheng.com/?refer=1418926  回復  更多評論   

            久久久久国产精品人妻| 久久99国产精品一区二区| 久久久无码精品午夜| 久久亚洲国产成人影院| 中文字幕日本人妻久久久免费| 亚洲成色www久久网站夜月| 久久亚洲私人国产精品vA| 93精91精品国产综合久久香蕉| 性高湖久久久久久久久AAAAA| 亚洲综合久久久| 久久久久久免费一区二区三区| 久久天天躁狠狠躁夜夜2020老熟妇| 精品国产日韩久久亚洲| 国产精品久久国产精品99盘 | 久久精品黄AA片一区二区三区| 精品久久久无码人妻中文字幕豆芽| 久久99久久成人免费播放| 伊人久久综合无码成人网| 国产巨作麻豆欧美亚洲综合久久 | 国产高潮国产高潮久久久91 | 伊人久久大香线蕉成人| 99久久成人18免费网站| 久久综合噜噜激激的五月天| 久久久久亚洲精品男人的天堂| 久久不射电影网| 国产精品99久久99久久久| 欧美成人免费观看久久| 99久久久久| 国产精品嫩草影院久久| 久久香蕉综合色一综合色88| 久久久久久久久久久久中文字幕| 三级三级久久三级久久| 中文字幕精品无码久久久久久3D日动漫 | 麻豆精品久久久久久久99蜜桃| 精品久久久久中文字幕一区| 国产福利电影一区二区三区,免费久久久久久久精 | 久久精品国产久精国产一老狼| 久久国产V一级毛多内射| 精品视频久久久久| 久久99精品久久久久久噜噜| 亚洲欧美日韩精品久久|