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

            寶杉的博客

            UNIX/LINUX;ACE;SNMP;C++
            posts - 33, comments - 23, trackbacks - 0, articles - 0

            友元函數與繼承類的友元函數

            Posted on 2007-08-03 12:55 寶杉 閱讀(1014) 評論(0)  編輯 收藏 引用 所屬分類: C++

            友元函數一般在類中聲明,如果一個友元需要訪問多個類的對象,那么每個類都要聲明一次友元函數。

            還要注意:友元函數的入口包括多個類,那這些類都要在友元函數之前聲明。

            如例子:Diary files\C++exams\frnd_vst2_func

            如果是類person的兩個繼承他的子類boy和girl,那么友元函數如何聲明和定義。

            Diary files\C++exams\frnd_member

            這需要注意的地方有:

            基類的數據成員共有;構造函數;構造函數初始化表;類的聲明先于友元函數,提高了重用性;

            基類的數據成員必須共有,因為構造函數會訪問到它們,子類的構造函數也會引用基類的構造函數,如果是私有的會是的子類構造函數不能直接訪問基類的私有成員,要通過基類的成員函數來訪問。

            子類:public基類

             

            還有寫細節問題:

            頭文件;char *a的聲明和使用;分配char*數據;

            例如:

            char *name;

            name = new char[ strlen( s ) + 1 ];

             

            友元函數的聲明時的入口參數可以只寫類型,不寫參數名。

            例如:

            class boy

            {

                   ……

                   void disp( gril & );

            }

            注意聲明時的入口參數可省略,但要寫&。

            定義時,寫成

            void disp( gril &x ){      ……       }

            久久人人爽人人爽人人片AV高清| 久久综合久久综合久久| 久久婷婷人人澡人人| 三级三级久久三级久久| 99国产欧美久久久精品蜜芽| 久久久久国产精品| 久久精品国产亚洲αv忘忧草| 久久精品国产亚洲沈樵| 国内精品伊人久久久影院| 97久久综合精品久久久综合| 久久人人爽人爽人人爽av| 精品熟女少妇av免费久久| 亚洲AV伊人久久青青草原| 99国产欧美久久久精品蜜芽| 人人妻久久人人澡人人爽人人精品| 久久精品视频网| 亚洲国产精品无码久久一线| 久久精品成人免费观看97| 久久国产精品久久国产精品| 亚洲精品乱码久久久久久按摩| 亚洲国产成人久久综合碰| 中文字幕成人精品久久不卡| 久久人妻少妇嫩草AV蜜桃| 亚洲а∨天堂久久精品| 一级做a爱片久久毛片| 777米奇久久最新地址| 久久精品毛片免费观看| 久久亚洲私人国产精品| 欧美日韩久久中文字幕| 国内精品久久久久影院老司| 欧美日韩久久中文字幕| 久久人人爽人人爽人人片AV东京热 | 丁香狠狠色婷婷久久综合| 精品国产乱码久久久久软件| 久久夜色精品国产亚洲av| 久久青青草原亚洲av无码| 亚洲国产成人久久笫一页| 久久福利资源国产精品999| 久久久久亚洲av综合波多野结衣| 亚洲精品国产第一综合99久久| 久久97久久97精品免视看|