10.對象和類

來源:互聯網
上載者:User

標籤:調用   let   自動   首碼   相同   編譯器   預設值   靜態   參數   

10-對象和類
  1. 程式員使用私人成員函數來處理不屬於公有介面的實現細節
  2. 內嵌函式定義部分加上 inline,聲明部分不需要
  3. 在OOP中,調用成員函數被稱為發送訊息 "send message"
  4. 自訂建構函式的參數名不能與類成員名相同,為了使得參數名更直觀,通常在資料成員名前加首碼m_,或者加尾碼_,以避免混亂
  5. 沒有定義建構函式時,編譯器會自動提供預設建構函式;但是一旦定義了非預設建構函式,就必須再手動定義一個預設建構函式
  6. 預設建構函式有兩種定義方法,一種是無參,另一種是有參,但所有參數都有預設值。通常,不管有無參數,都應該用預設值初始化所有的參數。即無參的預設建構函式也應該在函數體內賦予資料成員預設值。兩種定義方法不能同時使用

             //建構函式隱式與顯示調用         class food = class( "Ok",30,4.76 );         class food( "Ok",30,4.76 );         class *ptr = new class( "Ok",30,4.76 );         //預設建構函式隱式與顯示調用         class good;         class good = class( );         class *pre = new class;
  7. 解構函式無參
  8. 如果建構函式使用了new,解構函式必須調用delete
  9. 只要類方法不修改調用對象,就應該申明為const

             void show( ) const;
  10. this指標

            const Stock & Stock :: topval ( const Stock & s ) const        {            if (s.total_val > total_val)                return s;            else                return *this;         }    //第一個const表示傳回型別為const引用    //第二個const表示函數不能修改顯示調用的對象    //第三個const表示函數不能修改隱式調用的對象
  11. 對象數組

            const int STKS = 3;        Stock food [STKS] = {            Stock("NanoSmart", 12, 20.0),            Stock( ),            Stock("Monolithic Obelisks", 130, 3.25),        };        //訪問        food[0], food[1], food[2]
  12. 要使用範圍為類的常量,即常量由所有對象共用。
    直接在資料成員中定義const變數是不可行的,此時並沒有執行個體化
    有兩種方法,一:枚舉; 二:static待用資料類型

            private:            enum{ ok = 100 };        private:            static const int ok = 100;

10.對象和類

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.