C primer 12 類 主建構函式

2021-06-25 16:10:44 字數 1166 閱讀 7521

1、class 預設成員變數private,struct預設是public;

2、class screen

const 成員函式set中,this的型別是乙個指向const物件的const指標,就是說,指標位址不可以改,內容也不可以改。

而非const函式,this指標位址不可以改,但是指向的內容可以改。

3、變數名字查詢,先類型別,後全域性;全域性限定符::

int height;

class circle

}

4.建構函式作用:保證資料成員變數具有合適的初值。

建構函式名與類名相同,沒有返回值。

建構函式不能申明為const;

1)sales_item::sales_item(const string &book):isbn(book), units_sold(0), price(33.0)  //顯式初始化

2)sales_item::sales_item(const string& book)  //在isbn=book之前已初始化為空,book覆蓋初值而已

不管成員是否在建構函式初始化列表中顯式初始化,資料成員總是在初始化階段初始化,而初始化發生在計算階段之前!

常量以及引用變數,只能在初始化列表中進行初始化,不能賦值;

初始化順序與初始化列表順序無關,而是定義順序。

簡單程式:

#include using namespace std;

class param

param(int i)

~param()

int get()

private:

int x; };

class rect

rect(int i,int j,int k):s(i),width(j),length(k)

~rect()

private:

int s;

param length;

param width;

};int main()

執行結果:

C Primer12抽象基類

型別轉換與繼承 我們可以將基類的指標和引用繫結到派生類物件上。當使用基類的引用或指標時,實際上我們並不清楚我們使用的物件到底是基類物件還是派生類物件。靜態型別和動態型別 例如item.net price 它的靜態型別是quote 動態型別則根據傳入的實參來決定。如果傳入的是bulk quote,則動...

足跡C primer 12 函式過載

main函式不能過載 record lookup const account account是乙個型別 record lookup const phone record lookup const name account acct phone phone record r1 lookup acct ...

C primer 12章 動態記憶體

這一章,由於本身對c語言動態分配以及指標比較熟悉,所以看起來會很輕鬆的。int i pi1 i pi2 nullptr double pd new double 33 pd1 pd const ini pci new const int 12 delete i 編譯器發現i不是指標,產生編譯錯誤資訊...