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

            xyjzsh

            虛擬指針的問(wèn)題——memset相關(guān)


            class Node
            {
              
            public:
            Node(
            void){}
            ~Node(void){}
            virtual bool IsLeafNode()=0;

            }
            ;
            class InternalNode:public Node
            {
            public:
            InternalNode()
            {}
            virtual ~InternalNode(void){}
            virtual bool IsLeafNode(){return false;}
            }
            ;

            class LeafNode:public Node
            {
            public:
            LeafNode()
            {}
            virtual ~LeafNode(){}
            virtual bool IsLeafNode(){return true;}
            }
            ;


            定義以上的繼承結(jié)構(gòu):LeafNode和InternalNode繼承自Node
            有一個(gè)虛方法IsLeaf來(lái)判斷是否為葉子節(jié)點(diǎn)。
            下面有這樣的測(cè)試代碼:
            test()
            {
               Node *node = new InternalNode();
               memset(node,0,sizeof(InternalNode));
               node->IsLeafNode();
            }
            上述代碼編譯正常,而運(yùn)行時(shí)出錯(cuò)!
            出現(xiàn)上述問(wèn)題的原因是:
            對(duì)于有虛函數(shù)的類,每一個(gè)類有一個(gè)虛函數(shù)表,而每一個(gè)對(duì)象中會(huì)有一個(gè)指針指向這個(gè)虛函數(shù)表。
            當(dāng)   Node *node = new InternalNode();時(shí)編譯器會(huì)把一個(gè)指針知道InternalNode的虛函數(shù)表
            但是memset(node,0,sizeof(InternalNode));卻把這個(gè)指針設(shè)成了。
            所以在調(diào)用的時(shí)候出現(xiàn)了運(yùn)行時(shí)錯(cuò)誤!

            posted on 2011-03-14 15:46 呆人 閱讀(458) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)結(jié)構(gòu)

            <2011年7月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久亚洲精品国产精品婷婷 | 久久99精品国产麻豆婷婷| 狠狠干狠狠久久| 精品久久久久久国产三级| 久久夜色精品国产亚洲| 国产精品福利一区二区久久| 欧美性猛交xxxx免费看久久久| 久久99精品久久久大学生| yellow中文字幕久久网| 亚洲愉拍99热成人精品热久久| 国产精品久久久久久| 久久精品国产亚洲av麻豆蜜芽 | 久久久精品日本一区二区三区| 狠狠色婷婷久久综合频道日韩| 国产精品VIDEOSSEX久久发布 | 亚洲精品97久久中文字幕无码| 亚洲AV无码1区2区久久| 一级女性全黄久久生活片免费| 91精品国产乱码久久久久久 | 97久久精品无码一区二区| 亚洲精品国产自在久久| 久久久精品视频免费观看| 国产精品久久久亚洲| 久久精品国产亚洲AV无码麻豆 | 国内精品伊人久久久久网站| 久久精品人成免费| 亚洲精品白浆高清久久久久久 | 97久久精品午夜一区二区| 天天爽天天狠久久久综合麻豆| 久久亚洲sm情趣捆绑调教| 中文字幕亚洲综合久久菠萝蜜| 久久久久亚洲AV成人网人人网站 | 久久er热视频在这里精品| 久久久久久久久久久久中文字幕 | 国产日产久久高清欧美一区| 97久久久久人妻精品专区| 久久精品国产亚洲77777| 久久亚洲日韩精品一区二区三区| AV无码久久久久不卡蜜桃| 色欲久久久天天天综合网| AV无码久久久久不卡蜜桃|