我习惯了
new int[] {1,2,3,4,5};
用于初始化数组。但是现在看来,这不再起作用了,我必须明确说明有多少个元素,
new int[5] {1,2,3,4,5};
所以编译器忘了怎么算?
为了使这成为一个封闭的问题,是否可以省略元素的数量?
最佳答案
这在C++的当前版本中从未起作用,您只能对动态分配的数组进行零初始化(或不初始化)。
一直有效的是非动态分配的数组初始化:
int myarray[] = {1, 2, 3, 4, 5};
也许您对此感到困惑?
即使在C++ 0x中,在新表达式中省略显式数组大小说明符也不是合法的语法。
关于c++ - 内联数组初始化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4583628/