指针的初始化

Posted 加油!!!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指针的初始化相关的知识,希望对你有一定的参考价值。

下面描述正确的是
1
2
int *p1 = new int[10]; 
int *p2 = new int[10]();

正确答案: C   你的答案: D (错误)

p1和p2申请的空间里面的值都是随机值
p1和p2申请的空间里的值都已经初始化
p1申请的空间里的值是随机值,p2申请的空间里的值已经初始化
p1申请的空间里的值已经初始化,p2申请的空间里的值是随机值

 

析:对于内置类型而言,new仅仅是分配内存,除非后面显示加(),相当于调用它的构造函数,对于自定义类型而言,只要一调用new,那么编译器不仅仅给它分配内存,还调用它的默认构造函数初始化,即使后面没有加()

以上是关于指针的初始化的主要内容,如果未能解决你的问题,请参考以下文章

片段中的 EditText 上的空指针异常 [重复]

20160208.CCPP体系详解(0018天)

20160208.CCPP体系具体解释(0018天)

片段中的空指针异常

活动到片段通信:当我尝试从活动更新片段中的文本视图时,出现空指针异常

读取缓冲区拥有的访问内存