读书人

C++动态数组的初始化有关问题

发布时间: 2012-03-08 13:30:13 作者: rapoo

C++动态数组的初始化问题
primer上说,如下:
int *pia2 = new int[10]();
定义的动态数字,数组长度后面的括号将数组中的元素进行了初始化,不过不能初始化为不同的值,只能初始化为默认值。也就是说此处的动态数字中应该有10个0,不过我在VC下试了,并没有进行初始化,哪位知道什么原因?

[解决办法]
new[]会调用default constructor,但是对于built-in类型,C++的行为基本上跟C行为是一致的,即不做任何初始化。

读书人网 >C++

热点推荐