C 中建立物件的時候加括號和不加括號的區別

2022-07-29 10:21:12 字數 581 閱讀 9129

c++建立物件的語法有

在棧上建立myclass a;

在堆上建立加括號myclass *a= new myclass();

在堆上建立不加括號myclass *a = new myclass;

myclass a();宣告了乙個返回值為myclass型別的無參函式。

注: 第4條不會例項化乙個對像,只是乙個函式的宣告,一定要注意區分啊。

**驗證:

#include

class

myclass

myclass

(int i)

:num

(i)void

mymethod()

private

:int num;};

intmain()

結論

new 關鍵字建立物件時 對於內建型別:加括號會初始化,不加括號不初始化;對於自定義型別,都會呼叫預設建構函式,加不加括號沒區別。

C 中建立物件的時候加括號和不加括號的區別

c 建立物件的語法有 1 在棧上建立 myclass a 2 在堆上建立加括號 myclass a new myclass 3 不加括號 myclass a new myclass 4.myclass a 宣告了乙個返回值為myclass型別的無參函式。include class myclass m...

C 中建立物件的時候加括號和不加括號的區別

c 建立物件的語法有 1 在棧上建立 myclass a 2 在堆上建立加括號 myclass a new myclass 3 不加括號 myclass a new myclass 4.myclass a 宣告了乙個返回值為myclass型別的無參函式。include class myclass m...

C 建立物件時加括號與不加括號的區別

看到一篇文章對建立物件時的集中情況,梳理得很清楚 c 建立物件的語法有 1 在棧上建立 myclass a 2 在堆上建立加括號 myclass a new myclass 3 不加括號 myclass a new myclass 也是在對上建立,並且有乙個自定義型別指標指向myclass 4.my...