類物件和類指標

2021-06-21 08:24:33 字數 717 閱讀 6488

宣告:類物件:利用類的建構函式在記憶體中分配一塊記憶體,呼叫了建構函式

類指標:是乙個記憶體位址值,指向記憶體中存放的類物件,沒有呼叫建構函式

引用成員:

物件用"."

指標用"->"

物件生命期:

若是成員變數,則是類的析構函式來釋放空間

若是函式中的臨時變數,則作用域是該函式體內

指標生命期:

則需利用delete在相應的地方釋放分配的記憶體塊,用new一定要delete

記憶體占用:

物件用的是記憶體棧,是個區域性的臨時變數

指標用的是記憶體堆,是個永久變數,除非你釋放它

函式呼叫:

物件引數,引數傳遞占用的資源就太大了

指標引數,傳過去的就是4個位元組

當類是有虛函式的基類,關於虛函式的呼叫:

類的物件呼叫的是它自己的虛函式

類的指標呼叫的是分配給它空間時那個類的虛函式,要發揮虛函式強大就必須使用指標

對於類的物件和類的指標(用new運算子分配記憶體)在應用時區別 :

1:指標可以實現多型,父類的指標可以指向子類的物件,直接使用物件不行

2:當你希望明確使用這個類的時候,最好使用物件,如果你希望使用c++中的動態繫結,則最好使用指標或者引用

3:在類的宣告尚未完成的情況下,可以宣告指向該類的指標,但是不可宣告該類的物件

5:定義物件例項時就已經分配了記憶體,指標如果沒有new則未分配類物件所需記憶體

類物件和類指標區別

類物件和類指標 本文 student a s.setname a studeng b new student student b b new student b setname b 分析 定義類物件基本格式是 student a 在定義之後就已經為a這個物件分配了記憶體,且為記憶體棧 定義類指標基本...

類物件和類指標的區別

對於類ctest 宣告 類物件ctest c1 利用類的建構函式在記憶體中分配一塊記憶體,呼叫了建構函式 類指標ctest pc1 是乙個記憶體位址值,指向記憶體中存放的類物件,沒有呼叫建構函式 引用成員 物件用 指標用 物件生命期 若是成員變數,則是類的析構函式來釋放空間 若是函式中的臨時變數,則...

類指標和類物件的區別

如下程式 include include using namespace std class student void set string str void print 態成員函式 print int student number 0 靜態資料成員初始化 int main int argc,cha...