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

            專注于c++

              C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              21 Posts :: 0 Stories :: 4 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(15)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

             

             

            1、 如何使用無參構(gòu)造函數(shù)初始化?

            aClass obj();   //error,不能加括號

            aClass obj;

            2、聲明為引用的數(shù)據(jù)成員和const數(shù)據(jù)成員必須采用成員初始化列表進(jìn)行初始化。

            3、類與const

            const成員函數(shù)定義:在該函數(shù)中不改變調(diào)用他的對象的值。

            eg: void Func() const;

            const成員函數(shù)可重載,根據(jù)對象是否是const來決定調(diào)用。

            構(gòu)造函數(shù)和析構(gòu)函數(shù)不能聲明為const

            const數(shù)據(jù)成員 必須在構(gòu)造函數(shù)初始化列表中被初始化。

            eg: class test

            {

            test(int i):data(i) {}

            ……

            private:

                const int data;

            }

            注:const對象的“常量性質(zhì)”在從構(gòu)造函數(shù)完成對象初始化 對象析構(gòu)函數(shù)被調(diào)用結(jié)束這個過程之間一直保持。

             

            static成員函數(shù)不能聲明為constconst指示函數(shù)不能修改它操作的對象的內(nèi)容,但static成員函數(shù)獨(dú)立于類的任何對象。

             

            不一致使用const

             

            void Func2(int a[])

            {

            ……

            }

            void Func1(const int a[])

            {

                 Func2(a); //Error,不能將const修改為非constFunc2參數(shù)也該聲明為const

            ……

            } void Func2()vo

             

            4、友元friend,原型在類定義內(nèi)出現(xiàn),但友元不是成員函數(shù),privateprotected等與友元無關(guān),因此可以放在類的任何地方。

            5、在派生類的構(gòu)造函數(shù)的初始化列表中初始化成員、調(diào)用基類的構(gòu)造函數(shù),可以防止重復(fù)初始化。

            6、若一個類中含virtual函數(shù),則該類的析構(gòu)函數(shù)應(yīng)該為virtual

             

            7、重載復(fù)數(shù)類的+運(yùn)算符。

             

            Complex operator + (const Complex& x,const Complex& y)

            {

                   return (a,b);   //此語句調(diào)用下面的構(gòu)造函數(shù)

            }

             

            Complex::Complex(const Complex& x,const Comolex& y)

                     :real(x.real+y.real),imag(x.img+y.img)

            {

            }

             

            7、臨時對象

            class X

            {……};

             

            X x1(100);   //只有它不會產(chǎn)生臨時對象,只有1個構(gòu)造函數(shù)被調(diào)用

            X x2=X(100);

            X x3=100;

             

             

            8、多重繼承

            繼承關(guān)系如下圖

            Employee

            Employer

            Worker

            Manager

            Engineer

            產(chǎn)生二義性:如

             Engineer   eng;

             eng.Worker::Sex=0;

             eng.Manager::Sex=1;

            解決方法:使用虛基類

               class Worker:public virtual Employee

            {

            };

             

            class Manager:public virtual Employer

            {

            };

            類之間的關(guān)系如下圖所示:

            Employer

            Worker

            Manager

            Engineer

            不過這樣還是存在問題的,這是c++自身所決定的。

            posted on 2009-09-30 16:19 bellgrade 閱讀(369) 評論(0)  編輯 收藏 引用 所屬分類: C/C++
            青青青国产成人久久111网站| 无码人妻少妇久久中文字幕| 91精品国产乱码久久久久久| 国产精品女同久久久久电影院| 91久久精品电影| 一本一本久久aa综合精品| 99久久免费国产精品| 99精品久久久久久久婷婷| 久久综合久久综合九色| 丁香色欲久久久久久综合网| 97久久精品人人做人人爽| 亚洲乱码精品久久久久..| 久久精品国产亚洲一区二区三区| 国产aⅴ激情无码久久| 欧美久久亚洲精品| 国产成人AV综合久久| 国产精品久久久久9999| 久久精品亚洲AV久久久无码| 精品久久久久久无码中文野结衣| 青青草原精品99久久精品66| 久久精品国产男包| 亚洲精品成人久久久| 久久久久97国产精华液好用吗| A狠狠久久蜜臀婷色中文网| 欧美一区二区三区久久综合| 久久久久久午夜精品| 无码任你躁久久久久久| 久久精品人妻一区二区三区| 激情久久久久久久久久| 婷婷综合久久狠狠色99h| 狠狠色丁香久久婷婷综合五月| 女人高潮久久久叫人喷水| 久久国产免费观看精品| 久久www免费人成精品香蕉| 一本色道久久综合狠狠躁篇| 久久久国产精品网站| 国产欧美久久一区二区| 久久99热狠狠色精品一区| 99麻豆久久久国产精品免费| 久久99精品久久久久久| 久久久久亚洲AV成人网|