c 類的指標定義,c 類物件和指標的區別

時間 2021-08-30 09:31:59

1樓:吉祥二進位制

c++中的類,本質上就是使用者自定義的一個資料型別,因此它和內建資料型別在使用上有很多相似之處。 可以對比內建資料型別來理解。假設有一個test的class。

要定義類的指標,如下:

test  o_o; //定義test類的物件 o_o

test *p = &o_o; //定義一個類的指標,指向o_o

與int型別對比:

int  o_o; //定義一個int型別的物件o_o

int *p = &o_o; //定義一個int型別的指標,指向o_o

實際上是類似的。 不同之處在於建構函式、解構函式那塊。

同樣也可以使用new進行動態分配 。

int *p = new int (2); //動態分配一個int物件並初始化為2

類test的動態分配也類似:

test *po_o = new test; //動態分配一個test物件,這裡呼叫的是預設建構函式。

2樓:匿名使用者

不是,同樣是new可是含義是不一樣的。

對於int *parray = new int;這個的含義是在系統的堆空間上分配為int,也就是4個位元組的空間給parray,這個時候parray裡所指的值是沒有含義的,如你所說沒有定義值。

但是對於intarray * parray = new intarray來說,會激發intarray的建構函式,是否有意義則取決於intarray的建構函式的內容了。

3樓:

我是當一樣來理解的。

應該寫成這樣吧:

intarray * parray = new intarray();//括號

int * parray = new int();

兩個都不止是申明,已經初始化了。

第一句是建立(例項化)了一個intarrya的物件,指標parray指向它。

第二句是建立(分配了)了int型別的記憶體空間,指標parray指向那個空間。

兩個指標都已初始化了。

c++類物件和指標的區別

4樓:nba週報

類物件和類指標是兩個概念。

比如有個類:class test;

定義類物件:test test;// test是類test的一個例項,可以供通過"."運算子訪問類中的public成員

定義類指標:test *p_test; // 此時p_test只是一個指向test類型別的指標,還沒有分配記憶體。要使用指標,需要p_test = new test(); 此時p_test指向一個test類型別的物件,可以通過"->"運算子訪問類中的public成員

c 如何在類中定義指向另外類的指標

直接定義即可。比如已有一個類class a,再定義一個類class b,這樣在b的定義中,就可以有一個a 型別的成員變數。比如class b 這裡的b a就是一個a 型別的指標。需要注意的是,要使用這種形式的定義,要麼a的定義在b的上方,要麼在b定義前加一個a類的宣告。如class a class ...

關於c基類派生類的引用和指標,關於C 基類 派生類的引用和指標

1 首先回答第一個問題 用基類的指標指向派生類的物件,這樣做可以體現c 的重要特性 多型性。多型性其實也就是動態聯編。這樣做的好處是 當基類裡面定義了一個虛成員函式的時候,其派生類裡面定義了同名的函式可以實現覆蓋。你的基類指標指向那個物件,就呼叫那個物件的該方法。我舉個例子你應該就明白了 class...

C 實驗類和物件,c 實驗 類和物件

這個程式設計不難啊,為什麼自己不試試。新建一個類 class book void display int borrow int restore 寫函式 舉例 book book 構造 void book display 主函式 void main 大概如此,不懂加我112876463 class b...