正在分配C++对象的数组

Allocating an array of C++ objects

本文关键字:数组 对象 C++ 分配      更新时间:2023-10-16

我想使用以下代码分配一个C++对象数组:

class myClass {
public:
    myClass(int userValue)
    : value(userValue)
    { }
}
private:
    int value;
};
int main(){
    myClass* objArray = new myClass(22)[5];
    return 0;
}

但它给了我以下错误:

In constructor ‘myClass::myClass(int32)’:
error: expected ‘;’ before ‘[’ token
         objArray = new objArray(22)[5];

在向对象传递参数的同时,我应该如何创建对象数组?

使用std::vector

std::vector<myClass> objArray(5, 22);