C 靜態建立物件和動態建立物件的區別

2021-10-03 21:56:11 字數 674 閱讀 3898

我們應該都知道c++中建立類的物件有兩種方式:

①靜態建立,例如b b;

靜態建立乙個類物件,就是由編譯器為物件在空間中分配記憶體。使用這種方法,是直接呼叫類的建構函式

(2)動態建立,例如 b b = new b();

動態建立乙個類物件,就是使用new運算子為物件在空間中分配記憶體。這個過程分為兩步:第一步執行operator new( )函式,在堆空間中搜尋一塊記憶體並進行分配;第二步呼叫類的建構函式構造物件。這種方法是間接呼叫類的建構函式

**示例:

#include

#include

using

namespace std ;

class

complex

complex()

;complex

(double r,

double i)

~complex()

//析構函式};

intmain()

動態物件建立

c 的動態物件建立 當建立乙個c 物件時,會發生兩件事 1 為物件分配記憶體 2 呼叫建構函式來初始化那個記憶體 然而,為物件分配記憶體可以用以下幾種方式或在可選擇的時間發生 1 在靜態儲存區域,儲存空間在程式開始之前就可以分配。這個儲存空間在整個執行期間都存在。2 無論何時到達乙個特殊的執行點 左...

C 反射 動態建立物件

上面部落格學習了使用反射檢視型別的資訊,以及使用反射獲取特性物件。下面使用反射來動態建立物件。首先準備乙個test類 public class testclass public testclass int a,int b public int show public static int show ...

C 總結 動態建立物件

動態建立物件 2019 5 9 int p new int 不設定初值 對於自定義物件,呼叫預設無參建構函式 int p new int 設定初值為0,對於自定義物件,呼叫含參建構函式 int p new int 2 設定初值為2 釋放記憶體 delete p int prt new int 5 不...