在c++中用new来分配一个类数组
时间: 2024-09-24 19:16:45 浏览: 33
c++中用vectors改进内存的再分配
在C++中,当你需要动态地创建一个类的对象数组时,可以使用`new`运算符和数组初始化来完成。首先,你需要定义一个类的指针数组,然后使用`new`来为每个元素分配内存,并实例化相应的类对象。
例如,假设有一个名为`MyClass`的类:
```cpp
class MyClass {
public:
// 类的构造函数
MyClass(int value) : value_(value) {}
int getValue() const { return value_; }
private:
int value_;
};
// 创建 MyClass 的动态数组
MyClass* myObjects = new MyClass[5]; // 创建一个包含5个元素的数组
// 初始化并赋值
for (int i = 0; i < 5; ++i) {
myObjects[i] = MyClass(i); // 使用构造函数给每个元素赋值
}
// 使用和访问数组元素
cout << "Value at index 0: " << myObjects[0].getValue() << endl;
// 要释放内存,记得使用 delete[] 运算符
delete[] myObjects; // 别忘了这一步,防止内存泄漏
阅读全文