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

            MySpace

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              18 隨筆 :: 2 文章 :: 10 評論 :: 0 Trackbacks

            寫了一段代碼是這樣的


             

            #include "stdio.h"
            #include <string>
            #include <iostream>

            using namespace std;


             class A
             {
             public:
              A():i(0)
              {
               i++;

               cout << " A::A() is Exce." << endl;
              }

              virtual ~A()
              {
               i--;

               cout << " A::~A() is Exce." << endl;
              }

             private:
              int i;
             };

             class B : public A
             {
             public:
              B():j(0)
              {
               j++;

               cout << " B::B() is Exce." << endl;
              }

              ~B()
              {
               j--;

               cout << " B::~B() is Exce." << endl;
              }

             private:
              int j;
             };


            int main(void)
            {

             A *b = new B();

             delete b;

             return 0;
            }


            改代碼在 WINDOWS 和 LINUX 下編譯和執(zhí)行均沒有問題,但是在用 VC2005 逐步調(diào)試的時候會有問題。 delete b; 語句執(zhí)行時,是先執(zhí)行 B 類的析構(gòu)函數(shù),然后是 A 類的析構(gòu)函數(shù)。于是我在 A 類的析構(gòu)函數(shù)中  i--;  處設(shè)置了斷點,然后再逐步執(zhí)行,該函數(shù)執(zhí)行完成后執(zhí)行光標(biāo)突然跳到了 B類的析構(gòu)函數(shù)之后,然后 VC2005 提示該處找不到可執(zhí)行的代碼。但是直接運行生成的 EXE 程序卻沒有問題。由于 b 為 A 類型 但又指向 B 的一個指針,若 A 的析構(gòu)函數(shù)不為虛函數(shù)的話那 B 的析構(gòu)函數(shù)是不會執(zhí)行的。我還沒有在 LINUX 下逐步調(diào)試改代碼,不知道上面的問題是否是由 VC  自己的問題引起的。

             


             

            剛剛在 LINUX 下用 KDEVLOP 逐步調(diào)試了一下,當(dāng) A 類的析構(gòu)函數(shù)設(shè)置為虛函數(shù)的時候沒有出現(xiàn) VC 下那樣的錯誤提示,輸出也正確。只是我在 A 類的析構(gòu)函數(shù)中設(shè)置的斷點是無效的,就是說該析構(gòu)函數(shù)中語句是可以執(zhí)行的但是此處的斷點不能讓程序在此處停下來。看來可能是在此種問題上 VC 在 DEBUG時是做了一些并不是非常準(zhǔn)確的但可能是安全性方面的提示。

            posted on 2008-06-04 10:30 yang-chunlei 閱讀(303) 評論(0)  編輯 收藏 引用

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


            97久久综合精品久久久综合| 久久综合丁香激情久久| 久久综合久久美利坚合众国| 久久综合亚洲色HEZYO社区| 久久久噜噜噜www成人网| 久久久久久a亚洲欧洲aⅴ | 精品熟女少妇a∨免费久久| 精品久久久久香蕉网| 久久国产精品视频| 久久综合狠狠综合久久综合88| 精品久久久久久国产牛牛app| 久久久国产精华液| 久久精品国产清自在天天线| 日本久久久久亚洲中字幕 | 久久久久亚洲AV成人片| 久久久这里有精品中文字幕| 2021久久国自产拍精品| 久久亚洲AV无码精品色午夜| 国产免费福利体检区久久| 人妻精品久久久久中文字幕一冢本| 久久国产精品波多野结衣AV| 狠狠久久亚洲欧美专区| 久久亚洲AV成人出白浆无码国产| 理论片午午伦夜理片久久 | 久久久国产精华液| 无码人妻久久一区二区三区蜜桃| 久久线看观看精品香蕉国产| 国产精品成人99久久久久| 色婷婷综合久久久久中文一区二区| 青青久久精品国产免费看| 93精91精品国产综合久久香蕉 | 久久精品国产99久久久香蕉| 国产美女久久精品香蕉69| 亚洲精品tv久久久久久久久 | 青青草原综合久久大伊人| 国产亚洲色婷婷久久99精品91| 久久国产成人精品麻豆| 国产成人久久精品一区二区三区| 伊人久久大香线焦AV综合影院| 久久久久久午夜精品| 久久WWW免费人成一看片|