对new int[]()的理解(转载)
生活随笔
收集整理的這篇文章主要介紹了
对new int[]()的理解(转载)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
new(多個對象)數(shù)組
new分配的對象,不管單個對象還是多個對象的分配,都是默認(rèn)初始化。但可以對數(shù)組進(jìn)行值初始化,方法就是:在大小之后添加一對空括號。
int *p2 = new int[10]();申請了空間,而且進(jìn)行了初始化int *p1 = new int[10];只申請空間,沒有進(jìn)行初始化原因:對于一些結(jié)構(gòu)體,我們可以看到()往往表示構(gòu)造函數(shù),int是基本類型算初始化吧理由:你可以測試輸出兩種的值你會發(fā)現(xiàn)p1的值未知,而p2清零了
new運算符只是申請分配一個內(nèi)存空間而已,因為不知道為其分配對象的名稱,所以分配之后返回的只是一個指向該對象的指針,并沒有初始化,加上一個()后,就相當(dāng)于調(diào)用了默認(rèn)構(gòu)造函數(shù),會默認(rèn)初始化,用0來初始化
總結(jié)
以上是生活随笔為你收集整理的对new int[]()的理解(转载)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c#使用Path.Combine的一个坑
- 下一篇: java远程调试挂起线程_java进程的