在执行new期间是否可以在构造函数中传递不同的参数?

时间:2019-12-03 19:31:17

标签: c++ constructor new-operator

假设我有一个带有其构造函数的类:

Class MyClass {
  public:
     MyClass(int arg);
  private:
     int a;
};

和一个全局数组:

int MyArray[]={1,2,3,4,5,6,7,8,9,10}

我想拥有一个指向MyClass的动态指针数组,但是该数组的每个元素必须使用不同的编号调用构造函数。我正在尝试做类似的事情,但没有成功

int main()
{
   int i=0;
   MyClass *MyDynArray = new MyClass[10]{MyArray[i++]};
}

是否可以在C ++中执行此操作而不使用向量?在此先感谢!

1 个答案:

答案 0 :(得分:5)

您可以使用声明具有自动或静态存储持续时间的数组的相同方法进行操作。

MyClass *MyDynArray = new MyClass[10]{1,2,3,4,5,6,7,8,9,10};