动态创建的对象数组需要使用非默认构造函数,我认为我遇到的问题是语法。在我看来,我能够做到这一点的事实
int * somePtr = new int[5];
意味着我应该能够做到这一点
IntegerSet* someSet = new IntegerSet(this->getLength())[5];
其中 IntegerSet 是我创建的一个表示整数集的类。此代码发生在 IntegerSets 成员函数之一中。当我尝试这个时,我得到一个语法错误“无法从 IntegerSet 转换为 IntegerSet*”
我理解这意味着什么,这两种类型并不等同,但我看不出我在第 1 部分和第 2 部分中所做的事情之间的区别,除了第 2 部分必须将参数列表作为构造函数传递的事实. 所以正是在代码的那部分,我怀疑我的语法错误