2011-01-19 73 views
1

我想用带有参数的构造函数构造一个类的动态数组。C++动态数组

构造函数的大小参数在哪里去?

ex。 twoDArrayInDisguise = new dynamicArray(size)* [size];

不工作

+0

http://stackoverflow.com/questions/3016772/dynamic-memory-allocation-with-default-values这是类似的问题 – ckv 2011-01-19 12:45:01

回答

1

在C++中,你不能动态地创建一个类的阵列与具有PARAMATERS构造!

5

您不能直接执行此操作(使用new[]时,将使用默认构造函数)。

改为使用std::vector。您可以在参考对象方面初始化每个元素,如:

std::vector<T> vec(size, T(/* args */)); 
+0

+1此外,这是T应该支持复制构造函数和复制分配的原因,如果你打算将它与std :: vector(或任何其他std容器)一起使用。 – MatiasFG 2011-01-19 13:38:25