Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何创建序列的动态数组?_C++ - Fatal编程技术网

C++ 如何创建序列的动态数组?

C++ 如何创建序列的动态数组?,c++,C++,这就是我所研究和讲述的如何制作动态阵列: Sequence*seqArray=新序列[大小] 但是,每当我尝试创建这个数组时,它只调用序列的构造函数,而不是创建数组 语法是错误的还是在我理解这些数组如何工作时存在根本性错误?您正在动态创建多个序列对象,因此将调用构造函数 如果要制作可调整大小的数组,请使用vector 如果只想创建具有空插槽的数组,请使用双指针类型: Sequence ** seqArray = (Sequence **) malloc(size * sizeof(Sequenc

这就是我所研究和讲述的如何制作动态阵列:

Sequence*seqArray=新序列[大小]

但是,每当我尝试创建这个数组时,它只调用序列的构造函数,而不是创建数组


语法是错误的还是在我理解这些数组如何工作时存在根本性错误?

您正在动态创建多个序列对象,因此将调用构造函数

如果要制作可调整大小的数组,请使用
vector

如果只想创建具有空插槽的数组,请使用双指针类型:

Sequence ** seqArray = (Sequence **) malloc(size * sizeof(Sequence *));

使用<代码>新< /Cord>创建每个元素(或<代码> vector < /代码>)。这是我研究和告诉如何制作动态数组:——C++中的“动态数组”。你的代码是:首先,为数组的“代码”>大小/代码>元素分配存储,然后使用默认初始化初始化它们。或者简单地调用构造函数,在您的例子中。然后,它将指向新创建数组的第一个元素的指针指定给

seqArray
变量。我知道最好的选择是使用向量,但我应该用这种方式创建一个动态数组用于赋值@PaulMcKenzieth你应该提前提到这一点,关于不能使用
std::vector
。第二,调用构造函数的问题——必须创建对象。对象创建需要构造。语法是否错误?否。这是正确的语法。我对这些阵列如何工作的理解是否存在根本性错误?对见@deemgadoo的评论。